锁
sunshineywz
这个作者很懒,什么都没留下…
展开
-
[内核同步]自旋锁spin_lock、spin_lock_irq 和 spin_lock_irqsave 分析
自旋锁的初衷:在短期间内进行轻量级的锁定。一个被争用的自旋锁使得请求它的线程在等待锁重新可用的期间进行自旋(特别浪费处理器时间),所以自旋锁不应该被持有时间过长。如果需要长时间锁定的话, 最好使用信号量。单处理器的自旋锁:首先,自旋锁的目的如果在系统不支持内核抢占时,自旋锁的实现也是空的,因为单核只有一个线程在执行,不会有内核抢占,从而资源也不会被其他线程访问到。其次,支持内核抢占,由于自旋锁是禁止抢占内核的,所以不会有其他的进程因为等待锁而自旋.最后,只有在多cpu下,其他的cpu因为等待该cp原创 2020-06-09 14:12:58 · 799 阅读 · 1 评论 -
Linux死锁检测-Lockdep
本文来源:https://www.cnblogs.com/arnoldlu/p/8580387.html关键词:LockDep、spinlock、mutex。lockdep是内核提供协助发现死锁问题的功能。本文首先介绍何为lockdep,然后如何在内核使能lockdep,并简单分析内核lockdep相关代码。最后构造不同死锁用例,并分析如何根据lockdep输出发现问题根源。...原创 2020-05-30 08:29:10 · 269 阅读 · 0 评论