我知道硬件时钟是 RTC,即使 PC(或其他带有 RTC 的设备)关闭,它仍在运行。(在 Linux 中,我们可以通过输入“时钟“)第二个提到的时间,系统时间,是操作系统,Linux 真正使用的时间。我可以通过命令查看它”日期“
但是我还是不知道,PC启动后系统时间是怎么分配的。linux中是否设置了一些偏移值,然后使用该偏移值,并使用硬件时间和该偏移量来计算系统时间?
或者它以另一种方式发挥作用?
答案1
是的,有这两个时钟。如您所说,RTC(又名 CMOS 时钟/硬件时钟)和系统时钟(又名内核时钟、软件时钟),其值保存在操作系统配置中。此系统时钟基于定时器中断。
显然,这两者可能存在一些小数偏移,因此它们会偏离,操作系统有多种策略来处理计时器漂移。保持两者同步的常见现代方法之一是使用时间服务器比如基于 time.windows.com网络时间协议。
答案2
硬件时钟与系统时钟:硬件时钟是电池供电的“实时时钟”(也称为“RTC”、“CMOS 时钟”),它在系统关闭时跟踪时间,但在系统运行时不使用