学习笔记之Linux内核同步方法
一、程序并发执行的原因在用户空间:调度程序完全可能选择另一个高优先级的进程到处理器上执行,所以就有可能一个程序正处于临界区时被非自愿的抢占了,如果新调度的的进程随后也进入到同一个临界区,前后两个进程之间就会产生竞争。信号是异步发生的也有可能产生竞争条件。在内核空间:中断:中断几乎可以在任何时候异步发生,也就可能随时打断当前正在执行的代码。软中断和tasklet:内核能在任何时候唤醒或调度软中断和tasklet,打断当前正在执行的代码。内核抢占:因为内核可以...