首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 操作系统 > UNIXLINUX >

linux内核原子量操作的小疑义

2012-08-07 
linux内核原子量操作的小疑问atomic_set(&s-in_write_path, 1)//原子量的操作,只会完成相应的操作不会被

linux内核原子量操作的小疑问
atomic_set(&s->in_write_path, 1); //原子量的操作,只会完成相应的操作不会被干扰
audio_process_dma(s); //dma传输启动
atomic_set(&s->in_write_path, 0);
为何bixatomic_set 1呢先写0是否一样,毕竟只是让CPU安心的干完这个程序而已。难道是习惯或者为了和自旋锁或者信号量统一起来吗,请指教

[解决办法]
原子操作的含义仅仅是:本条语句的执行过程中不可被打断;置1还是置0,与原子操作无关。
这里的置1是表明,正处于DMA传输中;置0表明,DMA传输结束了。
[解决办法]

探讨
那就是说明1 表示原子操作启动中,0表示结束咯,顺序不能乱换是这个意思吧

热点排行