3

问题 - 我的 Linux 系统上存在间歇性时钟漂移(2 秒),因此内核计时器线程偶尔会执行 2 秒 + 超时时间

问题 - 有多个硬件时钟源(TSC、HPET、ACPI_PM),如果主时钟源发生漂移,是否可以创建强制使用辅助时钟源作为后备的内核定时器线程?

4

1 回答 1

1

您所描述的听起来不像时钟漂移(系统错误),而是像丢失的计时器中断。如果您有另一块可以生成定时中断的硬件(HPET、RTC,但不是 TSC),您可以从定时器或中断处理程序(或处理程序)进行时间敏感处理,以先发生者为准,您只需要在它们之间设计某种同步。

如果您遇到真正的时钟漂移,当您的时钟速度低于实时时,您可以尝试估计它并在安排计时器时进行补偿。但是丢失中断是更严重问题的标志,解决根本原因是有意义的,这也可能影响您的辅助中断源。

于 2012-12-27T06:21:25.557 回答