永发信息网

linux spin_lock的一些疑惑

答案:2  悬赏:0  手机版
解决时间 2021-02-10 01:52
2.6以后的内核支持内核抢占,被抢占的前提是:preempt_count为0,而很多spin_lock的实现中包含preempt_disable() 使程序调用spin_lock后 preempt_count为1.
那么:
可否认为spin_lock()之后sipn_unlock()之前的程序不管多长是原子形式进行的(执行时进程不会被换出)?
如果可以认为问题1的操作是以原子形式进行的, 那么系统如何处理spin_lock之后的阻塞或是睡眠?
最佳答案
原子形式进行和进程不会被换出没有关系。

只可以保证spin_lock()之后sipn_unlock()之前的程序在执行的过程中不会有其他进程进入。

所以也就不存在“系统如何处理spin_lock之后的阻塞或是睡眠”的问题了
全部回答
spin lock一般翻译为自旋锁,简单的理解是这样的,它和信号量差不多。  信号量:线程在无信号时会阻塞,阻塞时会释放cpu,让其它线程用。  自旋锁:自旋锁在得不到锁的状态下也会阻塞,但阻塞时不释放cpu,一直占用cpu,相当于在死循环。  如果想看比较专业的解释,可以参考:   <a href="http://wenwen.soso.com/z/urlalertpage.e?sp=shttp%3a%2f%2fbaike.baidu.com%2fview%2f1250961.html%3fwtp%3dtt" target="_blank">http://baike.baidu.com/view/1250961.html?wtp=tt</a>
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
美佳净干洗店(解放路)地址在什么地方,想过去
索尼l36h连上wifi一会儿又自动断开wifi
开面馆都要注意什么
如何修改电子银行口令卡密码
铁螺塘怎么去啊,有知道地址的么
求小小的巨人第十集资源
我们公司是每个月预扣员工五险一金的钱,而且
成都公积金贷款额度多少
洁丰干洗(东三路黑8台球室旁)地址有知道的么
芜湖特驱农牧科技公司地址在什么地方,想过去
灯和单的粤语是不是一样的
在深圳买二手车能不能上中山珠海户?
干锅小花姑的做法大全
汇洁干洗店(西一路)地址有知道的么?有点事想
“四方之士来者,必庙礼之“出自哪一课?
推荐资讯
哪位能帮我查下周口项城的经纬度?
3ds符文工房4浮游帝国城东怎么过
【移情之诱】...见明丽之景诱发内心伤感(或运
根据个人独资企业法律制度的规定,下列表述中
渝东鲜面铺地址在哪,我要去那里办事
晟旺微型汽车配件地址有知道的么?有点事想过
柳州市公安局河西工业园派出所我想知道这个在
小关村这个地址在什么地方,我要处理点事
东河路/北大街(路口)这个地址在什么地方,我
本科二批a 和本科二批b有什么区别啊
星盛宾馆地址在哪,我要去那里办事
今生有约婚纱摄影(广场路)怎么去啊,我要去那
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?