OS
llettod
这个作者很懒,什么都没留下…
展开
-
barrier 和preempt_disable() 学习 (转)
barrier 和preempt_disable() 学习分类:Linux内核学习2012-07-25 00:36394人阅读 评论(0)收藏举报[cpp] viewplaincopyprint?#define preempt_disable() \ do{ \ inc_preempt_count(); \ barrier(转载 2013-12-08 20:33:20 · 534 阅读 · 0 评论 -
LINUX内核内存屏障(转)
================= LINUX内核内存屏障 =================By: David Howells Paul E. McKenney 译: kouu 出处: Linux内核文档 -- Documentation/memory-barr转载 2013-12-08 23:43:51 · 667 阅读 · 0 评论 -
disable_preempt
今天看内核发现disable_preempt这个函数,觉得挺有意思就看了下网上资料,以下我将之整理成了两个函数来加以理解。一、barrier函数内存屏障出现因为编译器或现在的处理器常会自作聪明地对指令序列进行一些处理,比如数据缓存,读写指令乱序执行等等。如果优化对象是普通内存,那么一般会提升性能而且不会产生逻辑错误。但如果对 I/O操作进行类似优化很可能造成致命错误。所以要使用内存屏障,以转载 2013-12-08 23:23:28 · 676 阅读 · 0 评论