学不考儒,务掇精华;文不按古,匠心独运。Linux kernal 鬼斧神工,博大精深,让人叹为观止,拍手叫绝。然匠心独运的设计并非扑朔迷离、盘根错节,真正的匠心独运乃辞简理博、化繁为简,在简洁中昭显优雅和智慧,kfifo就是这样一种数据结构,它就是这样简约高效,匠心独运,妙不可言,下面就跟大家一起探讨学习。...
分类:
其他好文 时间:
2014-10-09 02:31:48
阅读次数:
316
内存屏障,也称内存栅栏,内存栅障,屏障指令等, 是一类同步屏障指令,使得CPU或编译器在对内存随机访问的操作中的一个同步点,使得此点之前的所有读写操作都执行后才可以开始执行此点之后的操作。来自一篇墙外的文章,写的非常好。...
分类:
其他好文 时间:
2014-10-09 02:08:38
阅读次数:
351
并发编程
线程通信
共享内存和消息传递
线程同步
控制不同线程的执行顺序
java并发
基于共享内存模型指令重排序
编译器重排序处理器重排序
cpu重排序写缓存区(cache、寄存器)
内存屏障顺序一致性与Happens-before执行结果有序性
volatile
解决内存可见性问题
锁
lock 显示锁
可中断可定时...
分类:
编程语言 时间:
2014-07-25 11:24:11
阅读次数:
275
大话Linux内核中锁机制之信号量、读写信号量在上一篇博文中笔者分析了关于内存屏障、读写自旋锁以及顺序锁的相关内容,本篇博文将着重讨论有关信号量、读写信号量的内容。六、信号量关于信号量的内容,实际上它是与自旋锁类似的概念,只有得到信号量的进程才能执行临界区的代码;不同的是获取不到信号量时,进程不会原...
分类:
系统相关 时间:
2014-06-30 21:56:16
阅读次数:
485
大话Linux内核中锁机制之内存屏障、读写自旋锁及顺序锁在上一篇博文中笔者讨论了关于原子操作和自旋锁的相关内容,本篇博文将继续锁机制的讨论,包括内存屏障、读写自旋锁以及顺序锁的相关内容。下面首先讨论内存屏障的相关内容。三、内存屏障不知读者是是否记得在笔者讨论自旋锁的禁止或使能的时候,提到过一个内存屏...
分类:
系统相关 时间:
2014-06-30 21:21:29
阅读次数:
472
内存屏障是指“由于编译器的优化和缓存的使用,导致对内存的写入操作不能及时的反应出来,也就是说当完成对内存的写入操作之后,读取出来的可能是旧的内容”(摘自《独辟蹊径品内核》)。内存屏障的分类:编译器引起的内存屏障缓存引起的内存屏障乱序执行引起的内存屏障1、编译器引起的内存屏障:我们都知道,从寄存器里面...
分类:
其他好文 时间:
2014-05-12 06:00:23
阅读次数:
283