如何检测笔记本电脑的主板,cpu,硬盘的温度

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何检测笔记本电脑的主板,cpu,硬盘的温度相关的知识,希望对你有一定的参考价值。

珺IOS 设定风扇启动温度为 cpu 75度,平常工作中一天下来风扇也几乎不转,硬盘的温度比较高,从网上查到左手边热是这款本本的通病。笔者的想法是让风扇在硬盘达到48、9度的时候让风扇转动起来,到设定的温度停下,并可以看到主板、cpu、硬盘的温度。在风扇控制完成以后,检测系统温度的问题就显出来了,一边用别人的软件看系统温度,一边手工来控制风扇的停和转动,累。 1、主板温度的检测笔记本电脑的bios和台式机有一些区别,通常本本的bios ACPI 会有一个热度表述区(ThermalZone) 或其它acpi定义的温度检测区域,读出这个区域的数值,就得到当前主板上温度传感器的值,xp/2000 支持acpi,所以很方便读到。但台式机基本没有ThermalZone,要监测温度,需要扫描系统总线。 如何读取acpi这个区域的数值呢,windows driver 读取这些值用于管理,所以通过WMI 能读到。连接到 WMI 的名字空间,请参考 MSDN 'WMI C++ Application Examples'。这里不做叙述. 主板温度在wmi中有两个名字:1、ROOT/CIMV2/Win32_TemperatureProbe 2、ROOT/WMI/MSAcpi_ThermalZoneTemperature 先检测 Win32_TemperatureProbe 是否有对象,如没有再检测 MSAcpi_ThermalZoneTemperature 然后读取成员 CurrentTemperature 为当前温度,CriticalTripPoint 为临界温度。此温度是以绝对 0 度开始并以 1/10 度增加,公式如下当前摄氏度 = (CurrentTemperature - 2732) / 10 2、硬盘温度的监测检测硬盘温度的工具或软件,都是通过 S.M.A.R.T来读取,对硬盘直接 DeviceIoControl 或者 WMI 都可以得到SMART值.SMART 数据存储于 WMI 中 ROOT/WMI/MSStorageDriver_ATAPISmartData 命名空间中,其中属性 'VendorSpecific' 包含有硬盘温度的数据,这是ATA标准定义的。可能你读出这些数据来会有些困惑,其实这是一个结构,第一个和第二个字节代表 SMART 版本信息,从第三个字节起定义 SMART 的属性,每个属性为12字节长,每个属性的第一字节为当前属性定义,0x09 定义已经使用的小时数, 0xc2 为温度属性,第五字节表示当前温度。结构如下 struct SmartAttriubteschar attrib;char flags;char worst;char normal;char current;char current1;char current2;char current3;char current4;char current5;char current6;char current7; 参考技术A 可以去网上下载一些像鲁大师这样的软件,有相对的温度计算。

以上是关于如何检测笔记本电脑的主板,cpu,硬盘的温度的主要内容,如果未能解决你的问题,请参考以下文章

怎么查看主板温度

python如何获取服务器硬件状态信息,包括CPU温度、硬盘温度、主板电池电压、主机电源电压、CPU风扇转速?

cpu温度检测方法 cpu的温度多少正常

GPU温度多少算正常?

可以远程查看其他电脑的温度吗?通过一台电脑远程监控多台电脑的硬盘,显卡,CPU温度,温度过高提示报警。

cpu温度如何检测