摘要: 一 临界区和竞争条件 临界区:访问和操作共享数据的代码段。 竞争条件:多个执行线程处于同一个临界区中。 处于竞争条件:造成访问的数据或者资源不一致状态:对资源i的访问:ProcessA和B访问后得到正确的结果应该是9: 进程是并发执行,有可能得到的结果是:8 防止这种情况的发生:保证对资源的访问原子操作。二 加锁 锁:采用原子操作实现,原子操作不存在竞争。 造成并发原因: l 中断:随时可以打断当前执行的进程代码; l 软中断和tasklet:任何时刻能唤醒调度软中断和tasklet,打断当前正在执行的代码; l 内核抢占:当前任务被抢占; l 进程睡眠:唤醒调度... 阅读全文
posted @ 2012-09-19 20:12 __Shadow 阅读(2201) 评论(0) 推荐(0)