CPU 温度取得方法 WinRing0 調査結果
メモ書き
CPU温度取得思いのほか手間がかかりますね。
WinRing0 (各種ハードウェアアクセスライブラリ HiyoHiyo様)
→
CPUのMSRレジスタを読むことが可能で、このMSRレジスタの中に、DTS(Digital Thermal Sensor)の情報がある。
Intelだと
ここのドキュメントに説明があります。
このフォーラム中にも記載あり
–抜粋
DTSでは、必要なのはMSR (Intel), NBレジスター (AMD)を読み、簡単な計算式に乗せるだけだ。
AMD CoreTemp = DTS_Value – 49
Intel CoreTemp = Tjunction – DTS
(Core Tempの仕様)
—
でもって、一番わかりやすいのがこちらのページでした。
→ソースコード公開されています。
というわけで
Intelの場合 MSRを読んで、それなりの温度表示は可能なようです。
いまひとつ不明なのが、計算式
Intel CoreTemp = Tjunction – DTS
のTjunction部分、
CPUデータシートを読んでいますが、、、
あーわからん。
その後、
いろいろと調べた結果
たぶんですが、Tjunction(Tj Max)の値は正式には公開されていないようです。
あちこちのリソースをあさった感じでは、
[Intel Tj Max]
Core 2 Duo E8000/E7000
100℃
Core 2 Quad Q9000/Q8000
100℃
Atom 330
125℃
—
Atomに関しては、CoreTempのTjMax値による
—
うーん、まーいいか。
トラックバックはまだありません。