Using HPET for base-timer
通知情報のため、対処の必要はなし。
HPET(High Precision Event Timer)をベースタイマとして使用する。
HPETはIA-PCのために考案された新しいタイマの仕組である。仕様上は従来のPIT, RTCを使用しつつ、これらの代わりにもなりえる構成となっている。
プロセッサに内蔵されない外部タイマ回路で、最大256個のタイマブロックを構成可能。設定は各タイマブロックの(Memory-Mapped I/O)レジスタに対して行なう。各タイマブロックはIDを持ち、メモリ消費量が1KBである。カーネルパラメタCONFIG_HPET_TIMER=yの場合にのみ表示される。Redhatではこのパラメタはデフォルトで"y"が設定されている。
Linux 2.6では、以下のタイマリソースが使用できる:
=== (1) PIT(Programmable Interval Timer) ===
プロセッサに内蔵されない外部タイマ回路である。クロック信号は内部で発生するため、外部信号に依存しない。タイマ割り込み周期はプログラムで柔軟に変更可能。通常は8254チップが使用される。発生した割り込みは特定なプロセッサに配分されることはない。
=== (2) Local APIC Timer ===
各プロセッサ内部に内蔵されるタイマで、該当プロセッサに対して割り込みを発生する。32ビットのカウンタを持つため、PITより長い割り込み周期を発生できるが、プログラムからカウンタの値をバスクロック信号の1, 2, 4, 8, 16, 32, 64, 128毎に対して1を減らすことしか設定できない。
=== (3) HPET(High Precision Event Timer) ===
上記で述べられている。
=== (4) PM-Timer(ACPI Power Management Timer) ===
ACPI対応のマザーボードであれば、このタイマが提供される。固定周波数約3.58MHzのクロック信号を発生し、クロック周期毎にカウンタ値が1減らされる。I/Oポートに対してカウンタ値をアクセスできる。
カーネル起動直後、RTCの時間が読み込まれ、上記のタイマリソースが1つ選択される。RTC (Real Time Clock)は現在の時間を計測する独立なタイマ回路である。タイマチップの電源はバッテリによって提供されるため、システムの電源が落ちていても時間の計測は続けられる。