Timer 两个平台的HZ linux值不同,内核计时器的行为会不同吗?

Timer 两个平台的HZ linux值不同,内核计时器的行为会不同吗?,timer,linux-kernel,linux-device-driver,device-driver,Timer,Linux Kernel,Linux Device Driver,Device Driver,我有两台机器,一台x86机器的赫兹值为1000,另一台嵌入式机器的赫兹值为250。 如果我在两台机器上都使用内核计时器 timer.expires=毫秒到毫秒(x), 所以现在两台机器上的时间到期时间都是相同的“x”毫秒,或者在这些情况下我们需要特别小心 如果您使用高分辨率计时器(内核配置),那么内核计时器将使用它,您将得到正确的结果。 如果您不使用HR定时器,则在HZ=250系统上,最小时间片为4毫秒。因此,如果您睡眠时间少于4毫秒,您将在下一个时间片上醒来。例如,如果运行1000次休眠1ms

我有两台机器,一台x86机器的赫兹值为1000,另一台嵌入式机器的赫兹值为250。 如果我在两台机器上都使用内核计时器 timer.expires=毫秒到毫秒(x),
所以现在两台机器上的时间到期时间都是相同的“x”毫秒,或者在这些情况下我们需要特别小心

如果您使用高分辨率计时器(内核配置),那么内核计时器将使用它,您将得到正确的结果。

如果您不使用HR定时器,则在HZ=250系统上,最小时间片为4毫秒。因此,如果您睡眠时间少于4毫秒,您将在下一个时间片上醒来。例如,如果运行1000次休眠1ms的循环,循环将在4秒后结束。

如果使用高分辨率计时器(内核配置),那么内核计时器将使用它,您将得到正确的结果。
如果您不使用HR定时器,则在HZ=250系统上,最小时间片为4毫秒。因此,如果您睡眠时间少于4毫秒,您将在下一个时间片上醒来。例如,如果运行1000次休眠1ms的循环,循环将在4秒后结束。

检查/proc/timer\u列表的内容以获得每个系统上计时器的分辨率。检查/proc/timer\u列表的内容以获得每个系统上计时器的分辨率。