摘要: 内核中提供了多种方法来防止竞争条件,理解了这些方法的使用场景有助于我们在编写内核代码时选用合适的同步方法,从而即可保证代码中临界区的安全,同时也让性能的损失降到最低。主要内容:原子操作自旋锁读写自旋锁信号量读写信号量互斥体完成变量大内核锁顺序锁禁止抢占顺序和屏障总结1. 原子操作原子操作是由编译器来保证的,保证一个线程对数据的操作不会被其他线程打断。原子操作有2类:原子整数操作,有32位和64位。头文件分别为和原子位操作。头文件 原子操作的api很简单,参见相应的头文件即可。原子操作头文件与具体的体系结构有关,比如x86架构的相关头文件在 arch/x86/include/asm/*.h2. 阅读全文
posted @ 2013-05-01 11:16 wang_yb 阅读(14400) 评论(9) 推荐(5) 编辑