Blogs

为什么软件不应该有所有者?

由 Richard Stallman | 4000字 | 阅读大约需要8分钟 | 归档于新手上路

2020年6月11日

提出为什么软件不应该有所有者的问题,并给出了详细的分析,值得读者阅读。

继续阅读

linux spinlock/rwlock/seqlock原理剖析(基于ARM64)

由 LoyenWang | 3500字 | 阅读大约需要7分钟 | 归档于内核同步

2020年6月10日

spinlock就是大家熟知的自旋锁,它的特点是自旋锁保护的区域不允许睡眠,可以用在中断上下文中。自旋锁获取不到时,CPU会忙等待,并循环测试等待条件。自旋锁一般用于保护很短的临界区。本文将进一步揭开神秘的面纱。

继续阅读

《Linux内核分析与应用》第一章 : 概述导学

由 作者:陈莉君 编辑:梁金荣 | 1000字 | 阅读大约需要2分钟 | 归档于新手上路

2020年6月10日

Linux内核像一座金山,又像一片茂密的森林,出发的入口在哪里?仅仅只有C基础和数据结构知识,也想感受Linux内核的魅力,可以上路么?

继续阅读

系统调用跟我学(1)

由 雷镇 | 3700字 | 阅读大约需要8分钟 | 归档于系统调用

2020年6月10日

本文是Linux系统调用专栏系列文章的第一篇,对Linux系统调用的定义、基本原理、使用方法和注意事项大概作了一个介绍,以便读者对Linux系统调用建立一个大致的印象。

继续阅读

Linux内核之旅参与开源软件供应链点亮计划暑期2020项目活动

由 薛晓雯编辑 | 3400字 | 阅读大约需要7分钟 | 归档于社区

2020年6月9日

Linux内核之旅开源社区的社区负责人梁金荣和社区项目负责人赵晨雨参与开源软件供应链点亮计划暑期 2020 项目活动的直播。

继续阅读

Pthread

| 5600字 | 阅读大约需要12分钟 | 归档于文件系统

2020年6月8日

本文从三个方面讲述进程线程的那些事儿,先介绍了由线程引发的概述,接着讲述了进程在Linux内核中的角色扮演,最后从实践理解基本原理。

继续阅读

Linux系统调用

| 9600字 | 阅读大约需要20分钟 | 归档于系统调用

2020年6月7日

本期重点和大家讨论系统调用机制。其中涉及到了一些及系统调用的性能、上下文深层问题,同时也穿插着讲述了一些内核调试方法。并 且最后试验部分我们利用系统调用与相关内核服务完成了一个搜集系统调用序列的特定任务,该试验具有较强的实用和教学价值。

继续阅读

eBPF内核探测中将任意系统调用转换成事件

由 梁金荣 | 1900字 | 阅读大约需要4分钟 | 归档于eBPF

2020年6月7日

Linux 4.4 以上内核基于 eBPF 可以将任何内核函数调用转换成可带任何数据的用户空间事件。程序采集系统相关参数时,通常有两种方式。一种是程序主动去轮询,检查系统变化,即 poll 模型;另一种是系统主动通知程序,即 push 模型。使用 poll 模型还是 push 模型取决于具体的问题。通常情况下,如果事件频率相对于事件处理时间来说比较低,那 push 模型比较合适;如果事件频率很高,就采用 pull 模型。例如,通常的网络驱动会等待网卡事件,而 dpdk 这样的框架会主动 poll 网卡, 以获得最高的吞吐性能和最低的延迟。理想情况下,我们需要一个通用的方式处理事件,具体做法请看此篇。

继续阅读

Linux内存管理

由 Jinrong | 11200字 | 阅读大约需要23分钟 | 归档于内存管理

2020年6月7日

本章首先以应用程序开发者的角度审视Linux的进程内存管理,在此基础上逐步深入到内核中讨论系统物理内存管理和内核内存的使用方法。力求从外到内、水到渠成地引导网友分析Linux的内存管理与使用。在本章最后,我们给出一个内存映射的实例,帮助网友们理解内核内存管理与用户内存管理之间的关系,希望大家最终能驾驭Linux内存管理。

继续阅读

双刃剑

由 王聪 | 7300字 | 阅读大约需要15分钟 | 归档于新手上路

2020年6月7日

Jim Gettys,X Window系统的最初作者之一,递交的一篇非常有深度的社论,涉及X Window系统和它可能的将来。

继续阅读