一旦锁定被另一个任务释放,linux中等待锁定的任务如何唤醒?

时间:2013-04-17 10:29:09

标签: linux-kernel linux-device-driver kernel

让我们说linux中的任务A正在等待锁定,并且在那个时间指定的锁定由另一个任务B保持。因此任务A将处于等待队列中。现在一旦任务B完成,然后释放锁。现在我的疑问是任务A如何知道锁可用以及它是如何唤醒的?

1 个答案:

答案 0 :(得分:0)

答案是...... kernel

锁定和解锁由专用内核功能完成。当调用unlock时,内核会检查是否有人等待锁定,如果有,则会获得锁定并被内核唤醒。