什么是重新安排中断(RES)?是什么导致的?如何在Linux内核中处理?

时间:2013-08-23 07:12:41

标签: timer linux-kernel interrupt scheduler processor

“RES:Rescheduling interrupts”和“LOC:Local timer interrupts”有什么区别?什么责任解​​雇RES中断? LOC是否与处理器中的定时器h / w生成的通用定时器中断相同?

另外,请说明定时器中断和RES中断期间调度器的哪个部分被调用?如何在Linux内核中发生?

提前致谢。

1 个答案:

答案 0 :(得分:11)

重新安排中断是Linux内核唤醒空闲CPU核心以在其上安排线程的方法。在SMP系统上,这通常由调度程序完成,以便将负载分散到多个CPU核心。

  

调度程序尝试在尽可能多的内核上分布处理器活动。一般的经验法则是,最好在所有核心上以较低功率(较低的时钟频率)运行尽可能多的进程,而不是让一个核心真正忙于全速运行而其他核心处于休眠状态。

使用 Inter-Processor Interrupts (IPI) 实施重新安排中断。有关详细信息,请查看此 article on Rescheduling Interrupts on Linux


APIC针对特定CPU内核引发

本地定时器中断。只有那个CPU核心接收中断并处理它们。有关其各种优势的简要说明,请查看 answer