“RES:Rescheduling interrupts”和“LOC:Local timer interrupts”有什么区别?什么责任解雇RES中断? LOC是否与处理器中的定时器h / w生成的通用定时器中断相同?
另外,请说明定时器中断和RES中断期间调度器的哪个部分被调用?如何在Linux内核中发生?
提前致谢。
答案 0 :(得分:11)
重新安排中断是Linux内核唤醒空闲CPU核心以在其上安排线程的方法。在SMP系统上,这通常由调度程序完成,以便将负载分散到多个CPU核心。
调度程序尝试在尽可能多的内核上分布处理器活动。一般的经验法则是,最好在所有核心上以较低功率(较低的时钟频率)运行尽可能多的进程,而不是让一个核心真正忙于全速运行而其他核心处于休眠状态。
使用 Inter-Processor Interrupts (IPI) 实施重新安排中断。有关详细信息,请查看此 article on Rescheduling Interrupts on Linux。
本地定时器中断。只有那个CPU核心接收中断并处理它们。有关其各种优势的简要说明,请查看 answer 。