ハードウェアクロックはRTCであり、PC(またはRTCを備えた他のデバイス)がオフの場合でも動作していることはわかっています。(Linuxでは、次のように入力してこの時間を確認できます。ハードウェアクロック2番目に言及した時間、システム時間は、OS、Linuxによって実際に使用される時間です。コマンドで確認できます。日付「
しかし、PC の起動後にシステム時間がどのように割り当てられるのかはまだわかりません。Linux でオフセット値が設定され、それが使用され、システム時間の計算はハードウェア時間とこのオフセットを使用して行われるのでしょうか?
それとも別の方法で動作していますか?
答え1
はい、これら 2 つのクロックがあります。おっしゃるとおり、RTC (別名 CMOS クロック/ハードウェア クロック) と、OS 構成に値が保存されるシステム クロック (別名カーネル クロック、ソフトウェア クロック) です。このシステム クロックはタイマー割り込みに基づいています。
そして、明らかなように、これら2つは多少のオフセットがあり、それによってずれが生じ、OSはタイマーのずれに対処するための複数の戦略を持っています。タイムサーバーtime.windows.comのように、ネットワークタイムプロトコル。
答え2
ハードウェア クロックとシステム クロック: ハードウェア クロックは、バッテリー駆動の「リアルタイム クロック」(「RTC」、「CMOS クロック」とも呼ばれる) であり、システムの電源がオフのときに時間を追跡しますが、システムの実行中には使用されません。