
Linux内核同步
文章平均质量分 87
酷比少年
核心网络工程师,专注核心网络设备研发
展开
-
Linux内核源码之自旋锁的实现
1 Linux内核同步 Linux内核中有许多共享资源,这些共享资源是内核中进程都有机会访问到的。内核对其中一些共享资源的访问是独占的,因此需要提供机制对共享资源进行保护,确保任意时刻只有一个进程在访问共享资源。自旋锁就是一种共享资源保护机制,确保同一时刻只有一个进程能访问到共享资源。2 普通自旋锁 内核中提供的普通自旋锁API为spin_lock()何spin_unlock(),原创 2016-10-22 22:41:14 · 5476 阅读 · 0 评论 -
Linux内核源码之信号量的实现
之前的一片博客介绍了用于Linux内核同步的自旋锁,即使用自旋锁来保护共享资源,今天介绍另外一种Linux内核同步机制——信号量。信号量在内核中的使用非常广泛,用于对各种共享资源的保护。信号量与自旋锁的实现机制是不一样的,用处也是不一样的。首先,自旋锁和信号量都使用了计数器来表示允许同时访问共享资源的最大进程数,但自旋锁的共享计数值是1,也就是说任意时刻只有一个进程在共享代码区运行;信号量却允许使用原创 2016-10-30 14:07:50 · 7396 阅读 · 1 评论