HZ, 系统定时器能以可编程的频率(每秒定时器的节拍数)中断处理器。
100HZ表示每秒中中断CPU100次,所以选择合适的HZ值需要权衡。HZ值大定时器间隔时间就小,因此进程调度的准确性会更高。但是,HZ值越大也会导致开销和电源消耗更多,因为更多的处理器周期将被耗费在定时器中断上下文中。jiffy,一会,瞬间的意思。
jiffies变量记录了系统启动以来,系统定时器已经触发中断的次数。
内核每秒钟将jiffies变量增加HZ次。因此,对于HZ值为100的系统,1个jiffy相当于10ms,而对于HZ为1000的系统,1个jiffy相当于1ms。
jiffies被定义为volatile类型,它会告诉编译器不要优化该变量的存取代码。这样就确保了每个节拍发生的定时器中断处理程序都能更新jiffies值,并且循环中的每一步都会重新读取jiffies值。所以HZ表示每秒中断CPU的次数,jiffies表示系统启动以来中断的总次数。
假定HZ值为1000
32位的jiffies溢出时间:2^32-1 /1000 /3600 / 24 = 50天
64位的jiffies几乎不会发生溢出:2^64-1 /1000 /3600 / 24 /365 = 584,942,417年
jiffies & HZ
最新推荐文章于 2022-04-04 13:12:19 发布