Server fan regulation method, controller, computer program product, and medium

By adopting a trusted zone architecture in the management controller, the server fan control function is isolated in a secure world. The first operating system independently obtains temperature sensor data to control the fan, which solves the problem of server fan control being compromised and achieves safe and stable server heat dissipation.

WO2026144785A1PCT designated stage Publication Date: 2026-07-09INSPUR SUZHOU INTELLIGENT TECH CO LTD

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
INSPUR SUZHOU INTELLIGENT TECH CO LTD
Filing Date
2025-12-03
Publication Date
2026-07-09

AI Technical Summary

Technical Problem

In existing technologies, server fan control may be deliberately disrupted, leading to unstable heat dissipation and affecting the normal operation of the server.

Method used

The TrustZone architecture is adopted, which divides the resources of the management controller into a secure world and a normal world. The first operating system is located in the secure world, which integrates server fan control scripts. It obtains temperature sensor data through the target bus and independently controls the server fans, preventing the operating system in the normal world from interfering.

Benefits of technology

This ensures the safety and stability of server heat dissipation. Even if the operating system in the normal world is damaged, it cannot affect the server fan control function in the secure world, thus ensuring the reliability and safety of heat dissipation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2025139724_09072026_PF_FP_ABST
    Figure CN2025139724_09072026_PF_FP_ABST
Patent Text Reader

Abstract

The present application relates to the technical field of server heat dissipation, and discloses a server fan regulation method, a controller, a computer program product, and a medium. The method is applied to a first operating system in a management controller. The management controller adopts a trusted zone architecture, the first operating system is located in a secure world under the trusted zone architecture, and the first operating system has a server fan regulation script integrated therein. The method comprises: running the server fan regulation script, and acquiring a temperature value acquired by a temperature sensor in a server; and, on the basis of the temperature value acquired by the temperature sensor, regulating a server fan by means of a target bus. The method can ensure safe and stable heat dissipation of the server.
Need to check novelty before this filing date? Find Prior Art

Description

Server fan control methods, controllers, computer program products and media

[0001] Cross-references to related applications

[0002] This application claims priority to Chinese Patent Application No. 202411998354.X, filed on December 30, 2024, entitled “Server Fan Control Method, Controller, Computer Program Product and Medium”, the entire contents of which are incorporated herein by reference. Technical Field

[0003] This application relates to the field of server heat dissipation technology, and in particular to a server fan control method, controller, computer program product and medium. Background Technology

[0004] During server operation, internal components such as the processor, memory, and hard drive generate a significant amount of heat, causing the server temperature to rise. High temperatures can affect server performance and even lead to server crashes. Therefore, server cooling is essential. The most common cooling method is fan cooling, typically controlled by the server's BMC (Baseboard Management Controller). However, the BMC can be maliciously modified, affecting server cooling. For example, gaining root privileges and damaging the BMC can impair cooling and jeopardize normal server operation. Therefore, ensuring safe and stable server cooling has become a critical technical problem that needs to be solved by those skilled in the art. Summary of the Invention

[0005] The purpose of this application is to provide a server fan control method, controller, computer program product, and medium that can ensure the safe and stable heat dissipation of the server.

[0006] To address the aforementioned technical problems, this application provides a server fan control method, applied to a first operating system within a management controller. The management controller employs a trusted zone architecture, and the first operating system resides within the secure world of the trusted zone architecture. The first operating system integrates server fan control scripts; including:

[0007] Run the server fan control script to obtain the temperature values ​​collected by the temperature sensor in the server;

[0008] The server fan is controlled via the target bus based on the temperature value collected by the temperature sensor.

[0009] In some embodiments, obtaining the temperature value collected by the temperature sensor includes:

[0010] Read the temperature values ​​collected by the first type of temperature sensor and the second type of temperature sensor; the first type of temperature sensor is a temperature sensor that can be accessed by the first operating system, and the second type of temperature sensor is a temperature sensor that can be accessed by both the first and second operating systems; the second operating system is located in the ordinary world under the trusted region architecture.

[0011] It receives temperature values ​​collected by a second type of temperature sensor and a third type of temperature sensor from the second operating system; the third type of temperature sensor is a temperature sensor that the second operating system can access.

[0012] In some embodiments, controlling the server fan via a target bus based on the temperature value collected by a temperature sensor includes:

[0013] Based on the temperature value collected by the second type of temperature sensor read by the first operating system itself and the temperature value collected by the second type of temperature sensor transmitted by the second operating system, it is determined whether the temperature value transmitted by the second operating system is reliable.

[0014] If reliable, the server fan is controlled via the target bus based on the temperature values ​​collected by the first type of temperature sensor, the second type of temperature sensor, and the third type of temperature sensor.

[0015] If the data is unreliable, the server fan is controlled via the target bus based on the temperature values ​​collected by the first type of temperature sensor and the temperature values ​​collected by the second type of temperature sensor read by the first operating system.

[0016] In some embodiments, determining whether the temperature value transmitted by the second operating system is reliable, based on the temperature value collected by the second type of temperature sensor read by the first operating system itself and the temperature value collected by the second type of temperature sensor transmitted by the second operating system, includes:

[0017] Compare the temperature values ​​collected by the second type of temperature sensor that are read by the first operating system itself with the temperature values ​​collected by the second type of temperature sensor that are transmitted by the second operating system.

[0018] If the temperature value collected by the second type of temperature sensor read by the first operating system itself is consistent with the temperature value collected by the second type of temperature sensor transmitted by the second operating system, then the temperature value transmitted by the second operating system is reliable.

[0019] If the temperature value collected by the second type of temperature sensor read by the first operating system itself is inconsistent with the temperature value collected by the second type of temperature sensor transmitted by the second operating system, then the temperature value transmitted by the second operating system is unreliable.

[0020] In some embodiments, receiving temperature values ​​collected by a second type of temperature sensor and temperature values ​​collected by a third type of temperature sensor transmitted by a second operating system includes:

[0021] It receives temperature values ​​collected by a second type of temperature sensor and a third type of temperature sensor, transmitted by a second operating system through trusted firmware.

[0022] In some embodiments, the first type of temperature sensor includes a temperature sensor for acquiring the temperature of a target core component in a server.

[0023] In some embodiments, obtaining the temperature value collected by the temperature sensor includes:

[0024] Read the temperature values ​​collected by all temperature sensors in the server; the first operating system can access all temperature sensors in the server.

[0025] In some embodiments, controlling the server fan via a target bus based on the temperature value collected by a temperature sensor includes:

[0026] Based on the temperature values ​​collected by all temperature sensors read by the first operating system itself, the server fan is controlled via the target bus.

[0027] In some embodiments, the first operating system runs on a single processing core.

[0028] In some embodiments, the second operating system runs on multiple processing cores.

[0029] In some embodiments, it also includes:

[0030] If the temperature value transmitted by the second operating system is unreliable, then information indicating that the temperature value transmitted by the second operating system is unreliable is transmitted to the second operating system.

[0031] In some embodiments, it also includes:

[0032] Count the number of times the temperature values ​​transmitted by the second operating system were unreliable;

[0033] Determine if the number of times the temperature value transmitted by the second operating system is unreliable has reached a preset threshold;

[0034] If the condition is met, an alarm will be triggered.

[0035] To address the aforementioned technical issues, this application also provides a management controller. The management controller adopts a trusted zone architecture and includes a first operating system located in a secure world within the trusted zone architecture. The first operating system integrates a server fan control script. The management controller is used to run the server fan control script, acquire temperature values ​​collected by temperature sensors in the server, and control the server fan via a target bus based on the temperature values ​​collected by the temperature sensors.

[0036] To address the aforementioned technical problems, this application also provides a computer program product, including a computer program / instructions, which, when executed by a processor, implement the above-described server fan control method.

[0037] To address the aforementioned technical problems, this application also provides a computer non-volatile readable storage medium storing a computer program, which, when executed by a processor, implements the steps of the server fan control method described above.

[0038] The server fan control method provided in this application is applied to a first operating system in a management controller. The management controller adopts a trusted zone architecture, and the first operating system is located in a secure world under the trusted zone architecture. The first operating system integrates a server fan control script. The method includes: running the server fan control script to obtain the temperature value collected by the temperature sensor in the server; and controlling the server fan through the target bus based on the temperature value collected by the temperature sensor.

[0039] As can be seen, in the Trustzone architecture, the first operating system in the secure world integrates server fan control functionality. This first operating system in the secure world is responsible for controlling the server fans, making it difficult for malicious actors to compromise it. The Trustzone architecture provides a high degree of isolation between the ordinary world and the secure world. The operating system in the ordinary world lacks the authority to interfere with the server fan control functionality of the first operating system in the secure world. Even if someone gains root privileges on the operating system in the ordinary world, they cannot gain control over the server fans. Therefore, even if the operating system in the ordinary world is maliciously compromised, it will not affect the first operating system in the secure world's ability to control the server fans, thus ensuring the safe and stable operation of server cooling.

[0040] The management controller, computer program product, and media provided in this application all have the aforementioned technical effects. Attached Figure Description

[0041] To more clearly illustrate the technical solutions in some embodiments of this application, the prior art and the accompanying drawings used in some embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0042] Figure 1 is a schematic flowchart of a server fan control method provided in some embodiments of this application;

[0043] Figure 2 is a schematic diagram of a server fan control framework provided in some embodiments of this application. Detailed Implementation

[0044] The core of this application is to provide a server fan control method, controller, computer program product, and medium that can ensure the safe and stable heat dissipation of the server.

[0045] To make the objectives, technical solutions, and advantages of some embodiments of this application clearer, the technical solutions of some embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of this application, not all of them. Based on some embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0046] Please refer to Figure 1, which is a flowchart illustrating a server fan control method provided in some embodiments of this application. This method is applied to a first operating system in a management controller. The management controller adopts a trusted zone architecture, and the first operating system resides in a secure world within the trusted zone architecture. The first operating system integrates server fan control scripts; including:

[0047] S101: Run the server fan control script to obtain the temperature value collected by the temperature sensor in the server;

[0048] S102: Based on the temperature value collected by the temperature sensor, the server fan is controlled via the target bus.

[0049] In some embodiments of this application, the execution entity of the server fan control method is a first operating system in the management controller. The management controller adopts a trustzone architecture. The trustzone architecture divides the resources of the entire management controller into two worlds: a secure world and a non-secure world (or ordinary world). At the hardware level, the secure world and the ordinary world have their own independent operating environments, including independent instruction set execution spaces, memory mappings, etc. The secure world and the ordinary world are isolated; the ordinary world cannot directly access the resources of the secure world. The first operating system resides in the secure world and integrates server fan control scripts, possessing access permissions to secure hardware resources. Secure hardware resources are hardware resources accessible only to the first operating system. The target bus is a bus used for server fan control and belongs to secure hardware resources.

[0050] The management controller can be a BMC, an ILO (Integrated Lights-Out) remote controller, or an IDRAC (Integrated Dell Remote Access Controller). Taking a BMC as an example, as shown in Figure 2, the BMC's resources are divided into a secure world and a normal world. The BMC OS (Operating System), i.e., the second operating system, resides in the normal world, while the first operating system resides in the secure world.

[0051] During BMC startup, the bootrom (diskless boot ROM interface) divides and configures hardware resources into secure and insecure hardware resources, and starts the first operating system in the secure world and the BMC OS in the normal world. Insecure hardware resources are accessible to both the first and normal operating systems. The first operating system can access all hardware resources, while the BMC OS is limited to accessing insecure hardware resources. During the operation of the management controller, the first operating system is responsible for server fan control. It acquires temperature values ​​from temperature sensors within the server and, based on these values, controls the server fans via the target bus to achieve heat dissipation control. The target bus can be an I2C (Inter-Integrated Circuit) bus.

[0052] In some embodiments, obtaining the temperature value collected by the temperature sensor includes:

[0053] Read the temperature values ​​collected by the first type of temperature sensor and the second type of temperature sensor; the first type of temperature sensor is a temperature sensor that can be accessed by the first operating system, and the second type of temperature sensor is a temperature sensor that can be accessed by both the first and second operating systems; the second operating system is located in the ordinary world under the trusted region architecture.

[0054] The system receives temperature values ​​collected by a second type of temperature sensor and a third type of temperature sensor from the second operating system; the third type of temperature sensor is a temperature sensor that the second operating system can access.

[0055] In some embodiments, the first type of temperature sensor includes a temperature sensor for acquiring the temperature of a target core component in a server.

[0056] For example, the first type of temperature sensor includes temperature sensors used to collect the temperature of the CPU (Central Processing Unit). After the server starts, the first type of temperature sensor can be bound as a secure hardware resource, and only the primary operating system can access the first type of temperature sensor.

[0057] The second type of temperature sensor is a non-secure hardware resource. Both the first and second operating systems can access it. This type of temperature sensor may include inlet / outlet temperature sensors, etc.

[0058] The third type of temperature sensor is a non-secure hardware resource, accessible to the second operating system. The first operating system does not have the capability to access the third type of temperature sensor, therefore it cannot access it. Examples of third-type temperature sensors include those that collect the temperature of RAID (Redundant Arrays of Independent Disks) cards and network cards.

[0059] After the server boots up, the first operating system runs the server fan control script, initiating the cooling process and reading temperature values ​​collected by the first and second types of temperature sensors. After the server boots up, the BMC OS (second operating system) initiates cooling-related processes, reading temperature values ​​collected by the second and third types of temperature sensors. For example, the second operating system obtains temperature values ​​from RAID cards, network cards, etc., via standard protocols such as MCTP (Management Component Transport Protocol), and obtains temperature values ​​from the inlet / outlet temperature sensors via the I2C bus. The second operating system then transmits the temperature values ​​from the second and third types of temperature sensors to the first operating system so that the first operating system can control the server fans. Note that the cooling-related processes in the second operating system only have the function of reading sensor temperatures and do not have the function of controlling the fans.

[0060] The first operating system reads temperature values ​​collected by some temperature sensors, while the second operating system reads temperature values ​​collected by other temperature sensors and transmits the read temperature values ​​to the first operating system. This makes the first operating system lightweight, minimizing its hardware resource consumption while ensuring its basic functions, removing complex system features, and making the first operating system respond faster.

[0061] In some embodiments, receiving temperature values ​​collected by a second type of temperature sensor and temperature values ​​collected by a third type of temperature sensor transmitted by a second operating system includes:

[0062] It receives temperature values ​​collected by a second type of temperature sensor and a third type of temperature sensor, transmitted by a second operating system through trusted firmware.

[0063] The second operating system's heat dissipation-related process, CA (Communication Agent), obtains temperature values ​​from both the second and third type of temperature sensors. This heat dissipation-related process accesses the Linux kernel, calls the kernel driver, and writes temperature data to the driver (Tee Driver) that interacts with the first operating system. The Tee Driver operates in privileged mode and can transmit temperature data to ATF (ARM Trusted Firmware) by calling SMC (System Management Control) commands. ATF has a Secure Monitor function (specifically for monitoring SMC commands transmitted from the outside world), capturing the transmitted commands and data and further transmitting them to the first operating system's kernel. The first operating system's kernel parses the commands and data transmitted by the ATF, finds the corresponding TA (Trusted Application) that parses the data, and completes the data transmission.

[0064] In some embodiments, controlling the server fan via a target bus based on the temperature value collected by a temperature sensor includes:

[0065] Based on the temperature value collected by the second type of temperature sensor read by the first operating system itself and the temperature value collected by the second type of temperature sensor transmitted by the second operating system, it is determined whether the temperature value transmitted by the second operating system is reliable.

[0066] If reliable, the server fan is controlled via the target bus based on the temperature values ​​collected by the first type of temperature sensor, the second type of temperature sensor, and the third type of temperature sensor.

[0067] If the data is unreliable, the server fan is controlled via the target bus based on the temperature values ​​collected by the first type of temperature sensor and the temperature values ​​collected by the second type of temperature sensor read by the first operating system.

[0068] The first operating system receives temperature values ​​collected by the second type of temperature sensor and the third type of temperature sensor from the second operating system, and determines whether the temperature value transmitted by the second operating system is reliable based on the temperature values ​​collected by the second type of temperature sensor read by the first operating system itself and the temperature values ​​collected by the second type of temperature sensor read by the second operating system.

[0069] If the temperature readings are reliable, the first operating system adjusts the server fans based on the temperature values ​​collected by the first, second, and third temperature sensors. If the temperature readings are unreliable, the first operating system adjusts the server fans based on the temperature values ​​collected by the first and second temperature sensors, ignoring the temperature values ​​transmitted by the second operating system. This avoids the influence of unreliable temperature values ​​on server fan control, ensuring the accuracy and reliability of server fan control.

[0070] In some embodiments, determining whether the temperature value transmitted by the second operating system is reliable, based on the temperature value collected by the second type of temperature sensor read by the first operating system itself and the temperature value collected by the second type of temperature sensor transmitted by the second operating system, includes:

[0071] Compare the temperature values ​​collected by the second type of temperature sensor that are read by the first operating system itself with the temperature values ​​collected by the second type of temperature sensor that are transmitted by the second operating system.

[0072] If the temperature value collected by the second type of temperature sensor read by the first operating system itself is consistent with the temperature value collected by the second type of temperature sensor transmitted by the second operating system, then the temperature value transmitted by the second operating system is reliable.

[0073] If the temperature value collected by the second type of temperature sensor read by the first operating system itself is inconsistent with the temperature value collected by the second type of temperature sensor transmitted by the second operating system, then the temperature value transmitted by the second operating system is unreliable.

[0074] The first operating system compares the temperature values ​​collected by the second type of temperature sensor that it reads itself with the temperature values ​​collected by the second type of temperature sensor that the second operating system reads.

[0075] If the temperature value collected by the second type of temperature sensor read by the first operating system is consistent with the temperature value collected by the second type of temperature sensor read by the second operating system, then the temperature value transmitted by the second operating system is considered reliable; if the temperature value collected by the second type of temperature sensor read by the first operating system is inconsistent with the temperature value collected by the second type of temperature sensor read by the second operating system, then the temperature value transmitted by the second operating system is suspected of being modified and is therefore unreliable.

[0076] In this case, if the temperature value collected by the second type of temperature sensor read by the first operating system itself is equal to the temperature value collected by the second type of temperature sensor read by the second operating system, or if the deviation between the temperature value collected by the second type of temperature sensor read by the first operating system itself and the temperature value collected by the second type of temperature sensor read by the second operating system is within the allowable range, it can be considered that the temperature value collected by the second type of temperature sensor read by the first operating system itself and the temperature value collected by the second type of temperature sensor read by the second operating system are consistent.

[0077] If the temperature value read by the first operating system from the second type of temperature sensor matches the temperature value read by the second operating system from the same second type of temperature sensor, then the first operating system adjusts the server fan according to the temperature values ​​read by the first, second, and third type of temperature sensors. If the temperature value read by the first operating system from the second type of temperature sensor does not match the temperature value read by the second operating system, then the first operating system adjusts the server fan according to the temperature values ​​read by the first and second type of temperature sensors, ignoring the temperature value transmitted by the second operating system.

[0078] In some embodiments, obtaining the temperature value collected by the temperature sensor includes:

[0079] Read the temperature values ​​collected by all temperature sensors in the server; the first operating system can access all temperature sensors in the server.

[0080] In some embodiments, controlling the server fan via a target bus based on the temperature value collected by a temperature sensor includes:

[0081] Based on the temperature values ​​collected by all temperature sensors read by the first operating system itself, the server fan is controlled via the target bus.

[0082] In some embodiments of this application, the first operating system has the ability to access all temperature sensors in the server and can read the temperature values ​​collected by all temperature sensors. Based on the temperature values ​​collected by all temperature sensors, the first operating system directly controls the server fan according to the temperature values ​​it reads. Since the first operating system reads the temperature values ​​collected by all temperature sensors itself, without requiring the second operating system to read and transmit the temperature values, this further enhances the isolation between the first and second operating systems, making server fan control more secure and reliable.

[0083] In some embodiments, the first operating system runs on a single processing core. The second operating system runs on multiple processing cores.

[0084] Based on the lightweight design of the first operating system, it can run on a single, independent processing core. The second operating system retains functions other than server fan control, such as device information management and remote control management. The second operating system can run on multiple processing cores.

[0085] In some embodiments, it also includes:

[0086] Count the number of times the temperature values ​​transmitted by the second operating system were unreliable;

[0087] Determine if the number of times the temperature value transmitted by the second operating system is unreliable has reached a preset threshold;

[0088] If the condition is met, an alarm will be triggered.

[0089] The first operating system can count the number of times the temperature values ​​transmitted by the second operating system are unreliable and determine whether the number of unreliable temperature values ​​transmitted by the second operating system reaches a preset threshold. If it does, it indicates that the temperature values ​​obtained by the second operating system have been modified multiple times, and the second operating system has a significant security risk, so an alarm can be issued. If it does not reach the threshold, only the number of times the temperature values ​​transmitted by the second operating system are unreliable can be recorded.

[0090] In some embodiments, it also includes:

[0091] If the temperature value transmitted by the second operating system is unreliable, then information indicating that the temperature value transmitted by the second operating system is unreliable is transmitted to the second operating system.

[0092] When the first operating system determines that the temperature value transmitted by the second operating system is unreliable, it can send a message indicating that the temperature value transmitted by the second operating system is unreliable. The second operating system can then stop transmitting temperature values ​​to the first operating system. Since the temperature value transmitted by the second operating system is unreliable, indicating that the temperature value obtained by the second operating system may have been maliciously modified and that the second operating system poses a security risk, the second operating system can also issue an alarm after receiving the message from the first operating system indicating that the temperature value transmitted by the second operating system is unreliable.

[0093] In summary, the server fan control method provided in this application integrates server fan control functionality into the first operating system within the secure world of a TrustZone architecture. This first operating system in the secure world is responsible for controlling the server fan and is not easily compromised. The TrustZone architecture provides a high degree of isolation between the ordinary world and the secure world; the operating system in the ordinary world lacks the authority to interfere with the server fan control function of the first operating system in the secure world. Even if root privileges are obtained on the operating system in the ordinary world, control over the server fan is impossible. Therefore, even if the operating system in the ordinary world is compromised, the first operating system in the secure world will still be able to perform the server fan control function, thus ensuring stable and safe server cooling.

[0094] This application also provides a server fan control device, which can be referred to in conjunction with the method described above. The device is applied to a first operating system in a management controller. The management controller adopts a trusted zone architecture, and the first operating system resides in a secure world within the trusted zone architecture. The first operating system integrates server fan control scripts; including:

[0095] The acquisition unit is used to run the server fan control script and acquire the temperature values ​​collected by the temperature sensor in the server.

[0096] The control unit is used to control the server fan via the target bus based on the temperature value collected by the temperature sensor.

[0097] Based on the above embodiments, as a specific implementation method, the acquisition unit includes:

[0098] The reading subunit is used to read the temperature values ​​collected by the first type of temperature sensor and the second type of temperature sensor; the first type of temperature sensor is a temperature sensor that can be accessed by the first operating system, and the second type of temperature sensor is a temperature sensor that can be accessed by both the first and second operating systems; the second operating system is located in the ordinary world under the trusted region architecture.

[0099] The receiving subunit is used to receive temperature values ​​collected by a second type of temperature sensor and a third type of temperature sensor transmitted by the second operating system; the third type of temperature sensor is a temperature sensor that the second operating system can access.

[0100] Based on the above embodiments, as a specific implementation method, the control unit includes:

[0101] The judgment subunit is used to determine whether the temperature value transmitted by the second operating system is reliable based on the temperature value collected by the second type of temperature sensor read by the first operating system itself and the temperature value collected by the second type of temperature sensor transmitted by the second operating system.

[0102] The first control subunit is used to control the server fan via the target bus, based on the temperature values ​​collected by the first type of temperature sensor, the second type of temperature sensor, and the third type of temperature sensor, if reliable.

[0103] The second control subunit is used to control the server fan via the target bus if the temperature value collected by the first type of temperature sensor and the temperature value collected by the second type of temperature sensor read by the first operating system are not reliable.

[0104] Based on the above embodiments, as a specific implementation method, the determination subunit includes:

[0105] The comparison subunit is used to compare the temperature value collected by the second type of temperature sensor read by the first operating system itself with the temperature value collected by the second type of temperature sensor transmitted by the second operating system.

[0106] The first determining subunit is configured to determine if the temperature value collected by the second type of temperature sensor read by the first operating system itself is consistent with the temperature value collected by the second type of temperature sensor transmitted by the second operating system, then the temperature value transmitted by the second operating system is reliable.

[0107] The second determining subunit is configured to determine if the temperature value collected by the second type of temperature sensor read by the first operating system itself is inconsistent with the temperature value collected by the second type of temperature sensor transmitted by the second operating system, in which case the temperature value transmitted by the second operating system is unreliable.

[0108] Based on the above embodiments, as a specific implementation method, the receiving subunit is used for:

[0109] It receives temperature values ​​collected by a second type of temperature sensor and a third type of temperature sensor, transmitted by a second operating system through trusted firmware.

[0110] Based on the above embodiments, as a specific implementation method, the first type of temperature sensor includes a temperature sensor for collecting the temperature of a target core component in a server.

[0111] Based on the above embodiments, as a specific implementation method, the acquisition unit is used for:

[0112] Read the temperature values ​​collected by all temperature sensors in the server; the first operating system can access all temperature sensors in the server.

[0113] Based on the above embodiments, as a specific implementation method, the control unit is used for:

[0114] Based on the temperature values ​​collected by all temperature sensors read by the first operating system itself, the server fan is controlled via the target bus.

[0115] Based on the above embodiments, as a specific implementation method, the first operating system runs on a single processing core.

[0116] Based on the above embodiments, as a specific implementation method, the second operating system runs on multiple processing cores.

[0117] Based on the above embodiments, as a specific implementation method, it further includes:

[0118] The transmission unit is used to transmit information indicating that the temperature value transmitted by the second operating system is unreliable if the temperature value transmitted by the second operating system is unreliable.

[0119] Based on the above embodiments, as a specific implementation method, it further includes:

[0120] The statistics unit is used to count the number of times the temperature values ​​transmitted by the second operating system are unreliable;

[0121] The judgment unit is used to determine whether the number of times the temperature value transmitted by the second operating system is unreliable has reached a preset threshold.

[0122] The alarm unit is used to issue an alarm notification if the condition is met.

[0123] This application also provides a management controller that adopts a trusted zone architecture. The management controller includes a first operating system located in a secure world within the trusted zone architecture and integrates a server fan control script. The management controller is used to run the server fan control script, obtain temperature values ​​collected by temperature sensors in the server, and control the server fan via a target bus based on the temperature values ​​collected by the temperature sensors.

[0124] Based on the above embodiments, as a specific implementation method, the management controller is used for:

[0125] Read the temperature values ​​collected by the first type of temperature sensor and the second type of temperature sensor; the first type of temperature sensor is a temperature sensor that can be accessed by the first operating system, and the second type of temperature sensor is a temperature sensor that can be accessed by both the first and second operating systems; the second operating system is located in the ordinary world under the trusted region architecture.

[0126] The system receives temperature values ​​collected by a second type of temperature sensor and a third type of temperature sensor from the second operating system; the third type of temperature sensor is a temperature sensor that the second operating system can access.

[0127] Based on the above embodiments, as a specific implementation method, the management controller is used for:

[0128] Based on the temperature value collected by the second type of temperature sensor read by the first operating system itself and the temperature value collected by the second type of temperature sensor transmitted by the second operating system, it is determined whether the temperature value transmitted by the second operating system is reliable.

[0129] If reliable, the server fan is controlled via the target bus based on the temperature values ​​collected by the first type of temperature sensor, the second type of temperature sensor, and the third type of temperature sensor.

[0130] If the data is unreliable, the server fan is controlled via the target bus based on the temperature values ​​collected by the first type of temperature sensor and the temperature values ​​collected by the second type of temperature sensor read by the first operating system.

[0131] Based on the above embodiments, as a specific implementation method, the management controller is used for:

[0132] Compare the temperature values ​​collected by the second type of temperature sensor that are read by the first operating system itself with the temperature values ​​collected by the second type of temperature sensor that are transmitted by the second operating system.

[0133] If the temperature value collected by the second type of temperature sensor read by the first operating system itself is consistent with the temperature value collected by the second type of temperature sensor transmitted by the second operating system, then the temperature value transmitted by the second operating system is reliable.

[0134] If the temperature value collected by the second type of temperature sensor read by the first operating system itself is inconsistent with the temperature value collected by the second type of temperature sensor transmitted by the second operating system, then the temperature value transmitted by the second operating system is unreliable.

[0135] Based on the above embodiments, as a specific implementation method, the management controller is used for:

[0136] It receives temperature values ​​collected by a second type of temperature sensor and a third type of temperature sensor, transmitted by a second operating system through trusted firmware.

[0137] Based on the above embodiments, as a specific implementation method, the first type of temperature sensor includes a temperature sensor for collecting the temperature of a target core component in a server.

[0138] Based on the above embodiments, as a specific implementation method, the management controller is used for:

[0139] Read the temperature values ​​collected by all temperature sensors in the server; the first operating system can access all temperature sensors in the server.

[0140] Based on the above embodiments, as a specific implementation method, the management controller is used for:

[0141] Based on the temperature values ​​collected by all temperature sensors read by the first operating system itself, the server fan is controlled via the target bus.

[0142] Based on the above embodiments, as a specific implementation method, the first operating system runs on a single processing core.

[0143] Based on the above embodiments, as a specific implementation method, the second operating system runs on multiple processing cores.

[0144] Based on the above embodiments, as a specific implementation method, the management controller is also used for:

[0145] If the temperature value transmitted by the second operating system is unreliable, then information indicating that the temperature value transmitted by the second operating system is unreliable is transmitted to the second operating system.

[0146] Based on the above embodiments, as a specific implementation method, the management controller is also used for:

[0147] Count the number of times the temperature values ​​transmitted by the second operating system were unreliable;

[0148] Determine if the number of times the temperature value transmitted by the second operating system is unreliable has reached a preset threshold;

[0149] If the condition is met, an alarm will be triggered.

[0150] For a description of the management controller provided in this application, please refer to the above method embodiments; further details will not be provided here.

[0151] This application also provides a computer program product, including a computer program / instructions, which, when executed by a processor, implement the above-described server fan control method.

[0152] For a description of the computer program product provided in this application, please refer to the above method embodiments; further details will not be provided here.

[0153] This application also provides a computer non-volatile readable storage medium storing a computer program, which, when executed by a processor, can implement the steps of the server fan control method described in some of the above embodiments.

[0154] The non-volatile readable storage medium for this computer may include: USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks or optical disks, and other media capable of storing program code.

[0155] For a description of the non-volatile readable storage medium provided in this application, please refer to the above method embodiments; further details will not be repeated here.

[0156] Some embodiments in this specification are described in a progressive manner, with some embodiments focusing on their differences from others. Similar or identical parts between embodiments can be referred to interchangeably. For the apparatuses, devices, and computer non-volatile readable storage media disclosed in some embodiments, since they correspond to the methods disclosed in others, the descriptions are relatively simple; relevant details can be found in the method section.

[0157] Those skilled in the art will further recognize that the units and algorithm steps of the various examples described in conjunction with some of the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of both. To clearly illustrate the interchangeability of hardware and software, the components and steps of the various examples have been generally described in terms of functionality in the foregoing description. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0158] The steps of the methods or algorithms described in conjunction with some of the embodiments disclosed herein can be implemented directly by hardware, a software module executed by a processor, or a combination of both. The software module can be located in random access memory (RAM), main memory, read-only memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, hard disk, removable disk, CD-ROM (Compact Disc Read-Only Memory), or any other form of storage medium known in the art.

[0159] The server fan control method, controller, computer program product, and media provided in this application have been described in detail above. Specific examples have been used to illustrate the principles and implementation methods of this application. The descriptions of these embodiments are merely for the purpose of helping to understand the method and its core ideas. It should be noted that those skilled in the art can make various improvements and modifications to this application without departing from its principles, and these improvements and modifications also fall within the protection scope of this application.

Claims

1. A server fan control method, characterized in that, A first operating system applied in a management controller, the management controller employing a trusted zone architecture, the first operating system residing in a secure world within the trusted zone architecture, and the first operating system integrating server fan control scripts; including: Run the server fan control script to obtain the temperature value collected by the temperature sensor in the server; The server fan is controlled via the target bus based on the temperature value collected by the temperature sensor.

2. The server fan control method according to claim 1, characterized in that, The temperature values ​​acquired by the temperature sensor include: Read the temperature values ​​collected by the first type of temperature sensor and the second type of temperature sensor; the first type of temperature sensor is a temperature sensor that can be accessed by the first operating system, and the second type of temperature sensor is a temperature sensor that can be accessed by both the first operating system and the second operating system; the second operating system is located in the ordinary world under the trusted region architecture. The system receives temperature values ​​collected by the second type of temperature sensor and the third type of temperature sensor, which are transmitted by the second operating system. The third type of temperature sensor is a temperature sensor that the second operating system can access.

3. The server fan control method according to claim 2, characterized in that, The first type of temperature sensor is a safe hardware resource, while the second type of temperature sensor is a non-safe hardware resource.

4. The server fan control method according to claim 2, characterized in that, The first type of temperature sensor includes a temperature sensor used to acquire CPU temperature.

5. The server fan control method according to claim 2, characterized in that, The second type of temperature sensor includes temperature sensors that collect the temperature of the air outlet and the air inlet.

6. The server fan control method according to claim 2, characterized in that, Based on the temperature value collected by the temperature sensor, the server fan is controlled via the target bus, including: Based on the temperature value collected by the second type of temperature sensor read by the first operating system itself and the temperature value collected by the second type of temperature sensor transmitted by the second operating system, it is determined whether the temperature value transmitted by the second operating system is reliable. If reliable, the server fan is controlled via the target bus based on the temperature values ​​collected by the first type of temperature sensor, the second type of temperature sensor, and the third type of temperature sensor. If the data is unreliable, the server fan is controlled via the target bus based on the temperature value collected by the first type of temperature sensor and the temperature value collected by the second type of temperature sensor read by the first operating system.

7. The server fan control method according to claim 6, characterized in that, Based on the temperature values ​​collected by the second type of temperature sensor read by the first operating system itself and the temperature values ​​collected by the second type of temperature sensor transmitted by the second operating system, the determination of whether the temperature value transmitted by the second operating system is reliable includes: Compare the temperature values ​​collected by the second type of temperature sensor that the first operating system reads itself with the temperature values ​​collected by the second type of temperature sensor that the second operating system transmits. If the temperature value collected by the second type of temperature sensor read by the first operating system itself is consistent with the temperature value collected by the second type of temperature sensor transmitted by the second operating system, then the temperature value transmitted by the second operating system is reliable. If the temperature value collected by the second type of temperature sensor read by the first operating system itself is inconsistent with the temperature value collected by the second type of temperature sensor transmitted by the second operating system, then the temperature value transmitted by the second operating system is unreliable.

8. The server fan control method according to claim 7, characterized in that, The temperature value collected by the second type of temperature sensor read by the first operating system itself is consistent with the temperature value collected by the second type of temperature sensor transmitted by the second operating system, including: the temperature value collected by the second type of temperature sensor read by the first operating system itself is equal to the temperature value collected by the second type of temperature sensor read by the second operating system, or the deviation between the temperature value collected by the second type of temperature sensor read by the first operating system itself and the temperature value collected by the second type of temperature sensor read by the second operating system is within the allowable range.

9. The server fan control method according to claim 2, characterized in that, The temperature values ​​received from the second type of temperature sensor and the third type of temperature sensor, transmitted by the second operating system, include: The system receives temperature values ​​collected by the second type of temperature sensor and the third type of temperature sensor, which are transmitted by the second operating system through trusted firmware.

10. The server fan control method according to claim 2, characterized in that, The first type of temperature sensor includes a temperature sensor used to collect the temperature of a target core component in a server.

11. The server fan control method according to claim 1, characterized in that, The temperature values ​​acquired by the temperature sensor include: Read the temperature values ​​collected by all temperature sensors in the server; the first operating system can access all temperature sensors in the server.

12. The server fan control method according to claim 11, characterized in that, Based on the temperature value collected by the temperature sensor, the server fan is controlled via the target bus, including: Based on the temperature values ​​collected by all temperature sensors read by the first operating system itself, the server fan is controlled via the target bus.

13. The server fan control method according to claim 1, characterized in that, The first operating system runs on a single processing core.

14. The server fan control method according to claim 2, characterized in that, The second operating system runs on multiple processing cores.

15. The server fan control method according to claim 6, characterized in that, Also includes: If the temperature value transmitted by the second operating system is unreliable, then information indicating that the temperature value transmitted by the second operating system is unreliable is transmitted to the second operating system.

16. The server fan control method according to claim 6, characterized in that, Also includes: Count the number of times the temperature values ​​transmitted by the second operating system were unreliable; Determine whether the number of times the temperature value transmitted by the second operating system is unreliable has reached a preset threshold; If the condition is met, an alarm will be triggered.

17. The server fan control method according to claim 16, characterized in that, The number of times the temperature value transmitted by the second operating system is unreliable reaches a preset threshold indicates that the temperature value obtained by the second operating system has been modified multiple times.

18. A management controller, characterized in that, The management controller adopts a trusted zone architecture and includes a first operating system located in a secure world within the trusted zone architecture. The first operating system integrates a server fan control script. The management controller is used to run the server fan control script and obtain temperature values ​​collected by temperature sensors in the server. The server fan is controlled via the target bus based on the temperature value collected by the temperature sensor.

19. A computer program product comprising a computer program / instructions, characterized in that, When the computer program / instructions are executed by the processor, they implement the steps of the server fan control method as described in any one of claims 1 to 12.

20. A computer-defined non-volatile readable storage medium, characterized in that, The computer non-volatile readable storage medium stores a computer program, which, when executed by a processor, implements the steps of the server fan control method as described in any one of claims 1 to 12.