为什么Linux RT不使用信号量?

时间:2012-12-01 05:11:51

标签: linux linux-device-driver

通过我阅读[1]时发现了以下内容

“这是通过用支持优先级继承的互斥锁替换大多数内核自旋锁,以及将所有中断和软件中断移动到内核线程来完成的。”

我的问题是为什么不是信号量?

https://rt.wiki.kernel.org/index.php/CONFIG_PREEMPT_RT_Patch

2 个答案:

答案 0 :(得分:2)

互斥锁是二进制信号量,因此它们使用信号量。

具体而言,锁定的目的是确保相互排斥。这意味着,创建一个代码的关键部分,一次只能由一个上下文执行。所以我们想要一个只允许一个竞争者的信号量 - 这种信号量是一个二进制信号量,它有一个特殊的昵称来表示这种用法:互斥。

答案 1 :(得分:0)