`
longxj
  • 浏览: 101842 次
  • 性别: Icon_minigender_1
  • 来自: 南京
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

When synchronization is not nescessary

 
阅读更多

这有些情况下,同步是不需要的:
1.所有的中断处理函数在执行时,irq line是disable的,所以相同的中断不会再次被触发。
2.Interrupt handlers,softirqs,and tasklets are both nonpreemptable and nonblocking,他们不会被挂起很长时间,
最坏情况下,他们只会被slightly delayed,因为会有其它的中断会发生。
3.a kernel control path performing interrupt handling cannot be interrupted by a kernel control path executing
a defferrable function or a system call service routine.
4.softirq 和 tasklet 不会再同一个cpu上被交叉执行,但是softirq可以在多个cpu上同时执行
5.tasklet不能同时在多个cpu上同时被执行
这样的约定使得kernel的设计可以得到简化。
2009/01/31 六

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics