
linux驱动并发与竞态
乐观其实真的很重要
冰冻三尺,非一日之寒
展开
-
为什么使用spinlock的时候不能睡眠
跟踪一下spin_lock(&mr_lock)的实现 #define spin_lock(lock) _spin_lock(lock) #define _spin_lock(lock) __LOCK(lock) #define __LOCK(lock) / do { preempt_disable()...转载 2018-11-23 22:05:15 · 977 阅读 · 0 评论 -
中断中为何不能使用信号量,中断上下文为何不能睡眠
不论是书上还是网上,对这块的解释,总是很凌乱, 让人不好理清。 大部分开发者可能也只知其然,不知所以然。 在网上找到一篇对此解释言简意赅,一看就懂的文章,故分享过来。 1、中断中为何不能使用信号量? 答: 信号量会导致睡眠。 2、中断上下为何不能睡眠? 以下为转载: http://blog.chin...转载 2018-11-23 22:08:27 · 937 阅读 · 0 评论