我知道硬體時鐘是 RTC,即使 PC(或其他具有 RTC 的設備)關閉,它仍在運行。 (在 Linux 中,我們可以透過輸入“來查看這個時間”硬體時鐘“)第二個提到的時間,系統時間,是作業系統、linux真正使用的時間。我可以透過comamnd看到它”日期」
但我還是不知道,電腦啟動後系統時間是如何分配的。 linux中是否設定了一些偏移值,然後使用該偏移值,並使用硬體時間和這個偏移來完成系統時間的計算?
或者它以另一種方式工作?
答案1
是的,有這兩個時鐘。您提到的 RTC(又稱 CMOS 時鐘/硬體時鐘)和系統時鐘(又稱核心時鐘、軟體時鐘)其值保存在作業系統配置中。此系統時鐘基於定時器中斷。
很明顯,這兩個可能會出現一些小數偏移,因此它們會出現偏差,並且作業系統有多種策略來處理計時器漂移。使用保持兩者同步的常見現代方法之一時間伺服器像 time.windows.com 基於網路時間協定。
答案2
硬體時鐘與系統時鐘:硬體時鐘是電池供電的「即時時鐘」(也稱為「RTC」、「CMOS 時鐘」),它在系統關閉時記錄時間,但在系統啟動時不使用。