Ind*_*der 5 linux-device-driver linux-kernel
当我读到时,定时器ISR在每个定时器滴答时增加jiffies.但在SMP中,所有CPU都有自己的定时器中断,因此它们自己的定时器ISR.所以我的问题是:
所有CPU的jiffies都是全局的吗?如果是这样,在定时器ISR中如何以及哪个CPU增加它?
根据我的理解,jiffies不能是每个cpu,否则在不同的cpu上安排的相同进程将看到不同的jiffy值.
谢谢
有两个定时器中断:
本地定时器中断(LOC
in /proc/interrupts
)在每个CPU上每个jiffy触发一次.
全局定时器中断(中断0)每个jiffy触发一次,一个CPU.它递增jiffies
.
请注意,"Tickless Kernel"配置选项(在Linux 2.6.21中引入CONFIG_NO_HZ
)会删除这些中断.使用无滴答内核,不再有周期性中断.相反,当一个进程启动它的量子时,Linux在硬件中设置一个"闹钟",以在量子结束时触发中断.