2

当内核处理中断时,如果硬件提出另一个中断请求,它会做什么,简单地放弃它?或者这种行为有害吗?

4

3 回答 3

2

在linux kernel 2.6+中,会将中断请求加入到队列中,请求处于等待状态

于 2012-08-03T08:08:46.927 回答
1

中断将一直等待,除非它的优先级高于前一个,在这种情况下它可能会抢占前一个。此外,如果有太多的中断挂起,内核将(至少 linux)恢复到软件排队中断。

于 2012-08-03T08:09:00.840 回答
0

小心带有各种 RT 补丁的内核:那里的中断具有优先级,因此可能在另一个中断内部有一个中断。实际上,这种情况下的自旋锁不再是自旋锁,它们变成了一种互斥锁;因此可以用更高优先级中断一个低优先级中断。

例如,请参阅此演示文稿

祝你好运。

于 2013-12-25T09:26:34.107 回答