Cómo detectar la temperatura de la placa base, la CPU y el disco duro de una computadora portátil
Jun IOS establece la temperatura de inicio del ventilador en 75 grados para la CPU. Durante el trabajo normal, el ventilador apenas gira al final del día. La temperatura del disco duro es relativamente alta. Según Internet, el calor en el lado izquierdo es un problema común en este portátil. La idea del autor es dejar que el ventilador gire cuando el disco duro alcance los 48 o 9 grados y se detenga cuando alcance la temperatura establecida, y se puede ver la temperatura de la placa base, la CPU y el disco duro. Una vez completado el control del ventilador, el problema de detectar la temperatura del sistema se vuelve evidente. Es agotador utilizar el software de otras personas para verificar la temperatura del sistema mientras se controla manualmente la parada y la rotación del ventilador. 1. Detección de temperatura de la placa base Existen algunas diferencias entre la BIOS de las computadoras portátiles y las de escritorio. Por lo general, la BIOS ACPI de las computadoras portátiles tendrá una zona térmica (ThermalZone) u otras áreas de detección de temperatura definidas por ACPI. área para obtener el valor actual del sensor de temperatura en la placa base, xp/2000 admite acpi, por lo que es fácil de leer. Sin embargo, las computadoras de escritorio básicamente no tienen ThermalZone. Para controlar la temperatura, es necesario escanear el bus del sistema. ¿Cómo leer los valores en el área acpi? El controlador de Windows lee estos valores para su administración, por lo que se pueden leer a través de WMI. Para conectarse al espacio de nombres WMI, consulte MSDN 'Ejemplos de aplicaciones WMI C++'. No hay descripción aquí. La temperatura de la placa base tiene dos nombres en wmi: 1. ROOT/CIMV2/Win32_TemperatureProbe 2. ROOT/WMI/MSAcpi_ThermalZoneTemperature Primero verifique si Win32_TemperatureProbe tiene un objeto. Si no, verifique MSAcpi_ThermalZoneTemperature y luego lea el miembro CurrentTemperature como la temperatura actual y CriticalTripPoint. como temperatura crítica. Esta temperatura comienza desde 0 grados absolutos y aumenta en 1/10 grados. La fórmula es la siguiente: Celsius actual = (Temperatura actual - 2732) / 10 2. Monitoreo de la temperatura del disco duro Las herramientas o el software para detectar la temperatura del disco duro se leen a través de S.M.A.R.T. El valor SMART se puede obtener directamente desde el disco duro a través de DeviceIoControl o WMI. Los datos SMART se almacenan en el espacio de nombres ROOT/WMI/MSStorageDriver_ATAPISmartData en WMI, donde el atributo 'VendorSpecific' contiene datos de temperatura del disco duro, que están definidos por el estándar ATA. Es posible que se sienta un poco confundido al leer estos datos. De hecho, esta es una estructura. El primer y segundo bytes representan información de la versión SMART. A partir del tercer byte, los atributos SMART tienen una longitud de 12 bytes. El byte de cada atributo es la definición del atributo actual, 0x09 define el número de horas que se ha utilizado, 0xc2 es el atributo de temperatura y el quinto byte indica la temperatura actual. La estructura es la siguiente struct SmartAttriubtes{char attrib;char flags;char peor;char normal;char actual;char actual1;char actual2;char actual3;char actual4;char actual5;char actual6;char actual7;