当处理中断时,内核在另一个硬件中断启动时会做什么

时间:2012-08-03 08:04:11

标签: kernel

当内核正在处理中断时,如果硬件引发了另一个中断请求,它会怎么做呢?或者这种行为会有害吗?

3 个答案:

答案 0 :(得分:2)

在Linux内核2.6+中,它会将中断请求添加到队列中,请求将处于等待状态

答案 1 :(得分:1)

中断将保持等待,除非它具有比前一个更高的优先级,在这种情况下它可能先于前一个中断。此外,如果有太多中断未决,内核将(至少linux)恢复为排队中断的软件。

答案 2 :(得分:0)

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

例如,请参阅this presentation

祝你好运。