内核空间的优先级

时间:2013-08-20 08:34:45

标签: linux kernel

我的问题涉及内核空间编程。 假设我们有2个处理程序: - 硬件中断 - / proc文件

是否有可能在硬件中断处理程序执行时通过/ proc处理程序中断它,因为用户将某些内容写入/ proc文件?

在这种情况下,两个处理程序的优先级是什么?

1 个答案:

答案 0 :(得分:1)

让我试着回答你的问题或让你的问题更清楚。

硬件处理程序在中断上下文中运行。当然,一个硬件处理程序分为两部分:一个较小但很关键的部分在中断上下文中执行,而另一部分是较大的部分,可以在软irq上下文中执行。

while" / proc文件处理程序"(您调用它)在用户进程上下文中执行。当您访问/ proc文件时,将触发并执行处理程序。

在硬件中断上下文中,有时会禁用本地硬件中断。在soft-irq上下文中,有时BH被禁用或内核抢占被禁用。也就是说,在中断环境中,某个时候,调度不会发生。基于此,我可以说" / proc文件处理程序的优先级"低于"中断处理程序"。

至于问题"是否有可能在硬件中断处理程序执行时由/ proc处理程序中断它,因为用户在/ proc文件中写了一些内容?"。在当前的内核中,这是不可能的。我认为如果你愿意,它不值得黑客攻击,因为它没有任何意义。