Remote upgrading method, device and equipment for redundant array of independent disks card firmware and medium

By detecting and verifying the firmware upgrade file through the management controller and using the video graphics array interface for remote upgrade, the automation problem of independent disk redundant array card firmware upgrade is solved, ensuring the stability and efficiency of the upgrade.

CN120631406APending Publication Date: 2025-09-12INSPUR (SHANDONG) COMPUTER TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510891387.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-06-27
Publication Date
2025-09-12

AI Technical Summary

Technical Problem

In the prior art, firmware upgrades for redundant array of independent disks lack remote automation capabilities, resulting in cumbersome and error-prone manual operations, which can easily lead to hardware failures due to file omissions, incorrect version selection, or bus protocol conflicts.

Method used

The management controller detects and verifies the firmware upgrade file in the memory, and uses the memory area mapped by the video graphics array interface to transfer the file to achieve remote upgrade, including file detection, verification and writing to the target storage area to ensure file integrity and compatibility.

Benefits of technology

The remote upgrade stability of the independent disk redundant array card firmware is achieved, which avoids errors in manual operation and hardware failures and improves the upgrade efficiency and security.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120631406A_ABST
    Figure CN120631406A_ABST
Patent Text Reader

Abstract

The invention discloses a remote upgrading method, device and equipment for redundant array card firmware and a medium, relates to the technical field of computers, is applied to a management controller, and comprises the following steps: detecting whether a firmware upgrading file of a redundant array card exists in a memory of the management controller or not; if the firmware upgrading file exists, verifying the firmware upgrading file; if the verification is passed, writing the firmware upgrading file into the target storage area, so that the server operating system performs remote upgrading on the redundant array card firmware of the independent disk based on the firmware upgrading file in the target storage area; the target storage area is an exclusive storage area divided from a memory area mapped by the communication interface, and the exclusive storage area is functionally isolated from other storage areas in the memory area. Therefore, according to the method and the device, upgrading failure caused by file transmission omission, version wrong selection or transmission damage in manual operation is avoided, hardware faults caused by instruction set and bus protocol conflicts are avoided, and the stability of remote upgrading is guaranteed.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of computer technology, and in particular to a remote upgrading method, device, equipment and medium for a redundant array of independent disks card firmware. Background Art

[0002] For certain specific central processing unit (CPU) platform servers, when upgrading the firmware of their independent disk redundant array cards (Raid), it is necessary to manually transfer the firmware file to the server operating system (OS) via a USB flash drive or the network, and manually run the Raid manufacturer script to complete the upgrade. The above technical defects are the lack of remote automated upgrade capabilities, which makes manual operation the main method, thereby causing a series of problems: (1) Manual operations such as firmware downloading, decompression, and transmission (U disk / network) need to be completed in sequence. The process is prone to upgrade failures due to file corruption, wrong version selection, and other problems, and even cause system instability. (2) There may be underlying compatibility conflicts such as instruction sets and bus protocols between specific CPU platform servers and some Raid card firmware, and the manual process lacks an automated verification mechanism. Summary of the Invention

[0003] In view of this, the present invention aims to provide a remote upgrade method, apparatus, device, and medium for redundant array of independent disks (RAID) card firmware, thereby avoiding upgrade failures caused by manual operation due to file omission, incorrect version selection, or transmission corruption, and avoiding hardware failures caused by instruction set or bus protocol conflicts, thereby ensuring the stability of remote upgrades. The specific solution is as follows:

[0004] In a first aspect, the present application discloses a remote upgrade method for a redundant array of independent disks card firmware, which is applied to a management controller, comprising:

[0005] Check whether there is a firmware upgrade file for the redundant array of independent disks card in the management controller memory;

[0006] If the firmware upgrade file exists in the memory of the management controller, executing a verification task for the firmware upgrade file, so as to verify the firmware upgrade file through the verification task;

[0007] If the verification passes, the firmware upgrade file is written to the target storage area so that the server operating system can remotely upgrade the firmware of the independent disk redundant array card based on the firmware upgrade file in the target storage area; wherein the target storage area is a dedicated storage area divided from the memory area mapped by the communication interface, the communication interface connects the management controller and the server operating system, and the dedicated storage area is functionally isolated from other storage areas in the memory area.

[0008] Optionally, the communication interface includes a video graphics array interface, and the memory area mapped by the video graphics array interface includes a video storage area and a target storage area; wherein the video storage area is used to store video data, and the target storage area is used to store firmware upgrade files.

[0009] Optionally, if the verification passes, the firmware upgrade file is written to the target storage area so that the server operating system can remotely upgrade the firmware of the redundant array of independent disks based on the firmware upgrade file in the target storage area, including:

[0010] If the verification passes, the firmware upgrade file is written to the target storage area through the first device file, so that the server operating system obtains the firmware upgrade file from the target storage area through the second device file, and remotely upgrades the firmware of the redundant array of independent disks based on the firmware upgrade file; wherein the first device file is a device file on the management controller side, the second device file is a device file on the server operating system side, and the first device file and the second device file both point to the target storage area;

[0011] The process in which the server operating system obtains the firmware upgrade file from the target storage area through the second device file and remotely upgrades the firmware of the redundant array of independent disks based on the firmware upgrade file includes:

[0012] Set up upgrade scripts in the server operating system;

[0013] Running the upgrade script to check whether the firmware upgrade file exists in the target storage area through the second device file at a preset interval;

[0014] If the firmware upgrade file exists, the upgrade program of the redundant array of independent disks card is called, so that the firmware of the redundant array of independent disks card is remotely upgraded by executing the upgrade program.

[0015] Optionally, check whether the management controller memory contains the firmware upgrade file for the redundant array of independent disks card, including:

[0016] Scan all files in the management controller memory according to the preset period through the detection process;

[0017] Extract characteristic information of all files in the memory of the management controller and compare the characteristic information of all files with the preset firmware file information;

[0018] Based on whether a matching file exists in the comparison result, it is determined whether a firmware upgrade file for the redundant array of independent disks card exists in the memory of the management controller.

[0019] Optionally, if the firmware upgrade file exists in the memory of the management controller, executing a verification task for the firmware upgrade file, so as to verify the firmware upgrade file through the verification task, includes:

[0020] If there is a matching file in the comparison result, it is determined that there is a firmware upgrade file of the redundant array of independent disks card in the memory of the management controller;

[0021] The verification process executes a verification task for the firmware upgrade file, so as to perform version compliance verification and content integrity verification on the firmware upgrade file.

[0022] Optionally, the method for upgrading the firmware of the redundant array of independent disks card also includes:

[0023] An index structure is created at the starting position of the target storage area; wherein the index structure includes an identification field, a storage address field, a priority field, and a status field. The identification field records the device identification of the redundant array of independent disks card, the storage address field records the storage location of the firmware upgrade file in the target storage area, the priority field records the upgrade priority of the firmware upgrade file, and the status field records the upgrade status of the redundant array of independent disks card.

[0024] Optionally, a firmware upgrade file is written to a target storage area so that the server operating system can remotely upgrade the firmware of the redundant array of independent disks based on the firmware upgrade file in the target storage area, including:

[0025] Multiple firmware upgrade files are sequentially written to a target storage area according to device identification and storage location, so that the server operating system determines the upgrade sequence of each independent disk redundant array card according to the upgrade priority, remotely upgrades the firmware of each independent disk redundant array card sequentially according to the upgrade sequence, and updates the corresponding upgrade status after the upgrade is completed.

[0026] In a second aspect, the present application discloses a remote upgrade device for a redundant array of independent disks card firmware, which is applied to a management controller and includes:

[0027] A file detection module is used to detect whether there is a firmware upgrade file of the independent disk redundant array card in the memory of the management controller;

[0028] A file verification module is used to execute a verification task for the firmware upgrade file if the firmware upgrade file exists in the memory of the management controller, so as to verify the firmware upgrade file through the verification task;

[0029] The firmware upgrade module is configured to write the firmware upgrade file to a target storage area if verification is passed, so that the server operating system can remotely upgrade the firmware of the redundant array of independent disks based on the firmware upgrade file in the target storage area; wherein the target storage area is a dedicated storage area divided from the memory area mapped by the communication interface, the communication interface connects the management controller and the server operating system, and the dedicated storage area is functionally isolated from other storage areas in the memory area.

[0030] In a third aspect, the present application discloses an electronic device, comprising:

[0031] Memory, used to store computer programs;

[0032] The processor is used to execute a computer program to implement the aforementioned method for remotely upgrading firmware of a redundant array of independent disks card.

[0033] In a fourth aspect, the present application discloses a computer-readable storage medium for storing a computer program; wherein, when the computer program is executed by a processor, the aforementioned method for remotely upgrading the firmware of a redundant array of independent disks card is implemented.

[0034] It can be seen that the present application proposes a remote upgrade method for the firmware of an independent disk redundant array card, which is applied to a management controller, including: detecting whether there is a firmware upgrade file for the independent disk redundant array card in the memory of the management controller; if the firmware upgrade file exists in the memory of the management controller, executing a verification task for the firmware upgrade file so as to verify the firmware upgrade file through the verification task; if the verification passes, writing the firmware upgrade file to a target storage area so that the server operating system can remotely upgrade the firmware of the independent disk redundant array card based on the firmware upgrade file in the target storage area; wherein the target storage area is a dedicated storage area divided in the memory area mapped by the communication interface, the communication interface connects the management controller and the server operating system, and the dedicated storage area is functionally isolated from other storage areas in the memory area. It can be seen that the present application first detects whether there is a firmware upgrade file for the independent disk redundant array card in the memory of the management controller, and if so, executes a verification task to verify the file. After the verification passes, the file is written to the target storage area divided in the memory mapped by the communication interface, so that the server operating system can remotely upgrade the firmware of the independent disk redundant array card based on the file. In this way, this application uses the management controller to automatically detect firmware upgrade files in memory, replacing the manual download, decompression, and file transfer process. This avoids upgrade failures caused by missed files, incorrect version selection, or transmission corruption. Furthermore, through verification tasks, automated file verification reduces the risk of manual misjudgment, solves the problem of tedious and error-prone manual operations, avoids hardware failures caused by instruction set and bus protocol conflicts, and ensures the stability of remote firmware upgrades for redundant array of independent disks. BRIEF DESCRIPTION OF THE DRAWINGS

[0035] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are merely embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on the provided drawings without paying any creative work.

[0036] Figure 1 This is a flow chart of a remote upgrade method for a redundant array of independent disks card firmware disclosed in this application;

[0037] Figure 2 This is a flowchart of a BMC-based Raid card firmware upgrade file processing disclosed in this application;

[0038] Figure 3 This is a schematic structural diagram of a remote upgrade device for a redundant array of independent disks card firmware disclosed in this application;

[0039] Figure 4 This is a structural diagram of an electronic device disclosed in this application. DETAILED DESCRIPTION

[0040] The following will clearly and completely describe the technical solutions in the embodiments of the present invention in conjunction with the accompanying drawings. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of the present invention.

[0041] For certain CPU platform servers, when upgrading the firmware of their independent disk redundant array cards, the firmware file needs to be manually transferred to the server operating system via a USB flash drive or the network, and the Raid manufacturer script needs to be manually run to complete the upgrade. The drawback is the lack of remote automated upgrade capabilities, which makes manual operation the main method, which in turn causes problems: (1) Manual completion of multiple operations such as firmware download, decompression, and transmission (U disk / network) in sequence. The process is prone to upgrade failures due to file corruption, wrong version selection, and other problems, and even causes system instability. (2) There may be underlying compatibility conflicts between specific CPU platform servers and some Raid card firmware, such as instruction sets and bus protocols, and the manual process lacks an automated verification mechanism.

[0042] To this end, the embodiments of the present application propose a remote upgrade solution for the firmware of an independent disk redundant array card, which can avoid upgrade failures caused by file omission, version error selection or transmission damage during manual operation, and avoid hardware failures caused by instruction set and bus protocol conflicts, thereby ensuring the stability of remote upgrades.

[0043] The present application discloses a remote upgrade method for a redundant array of independent disks card firmware, which is applied to a management controller. Figure 1 and Figure 2 As shown, the method includes:

[0044] Step S11: Detect whether there is a firmware upgrade file for the redundant array of independent disks card in the memory of the management controller.

[0045] In this embodiment, the management controller includes a baseboard management controller (BMC). A detection process scans all files in the management controller's memory at a preset period. Feature information is extracted from all files in the management controller's memory and compared with preset firmware file information. Furthermore, based on whether a matching file exists in the comparison results, it is determined whether a firmware upgrade file for a redundant array of independent disks card exists in the management controller's memory. Furthermore, if the comparison results indicate a matching file exists, it is determined that the firmware upgrade file for a redundant array of independent disks card exists in the management controller's memory.

[0046] Specifically, the task of searching for the Redundant Array of Independent Disks (RAID) card firmware upgrade file is performed using a dedicated detection process (Trans_RaidFw process) within the management controller. This detection process performs a comprehensive scan of all files within a specific storage area (e.g., / controller / raid_firmware_storage / ) in the management controller's memory at a pre-set interval, such as every minute. During the scan, the detection process extracts multiple signatures for each file in memory. After feature extraction, the detection process meticulously compares all acquired file signatures with the pre-set firmware file information stored in the management controller. If the comparison results show that all signatures of a file match the pre-set firmware file information, it is confirmed that a valid RAID card firmware upgrade file exists in the management controller's memory, triggering the subsequent upgrade process. Conversely, if none of the file signatures fully match the pre-set information, it is determined that the required RAID card firmware upgrade file does not exist in the management controller's memory. The system then continues the detection process, waiting for a new file to be stored or for the next detection cycle to begin.

[0047] For example, if a user downloads the 1.2MB firmware upgrade file "RAID_FW_V3.0.0.bin" for a certain Redundant Array of Independent Disks card and uploads it to a designated storage area in the management controller's memory, the detection process will scan the file, extract its file name, suffix, size, and other characteristic information, and compare it with the preset firmware file information (the file name must be in the format "RAID_FW_version number.bin", the suffix ".bin", and the size must be between 1 and 1.5MB). If the comparison results indicate that all the requirements are met, the file is determined to be a valid Redundant Array of Independent Disks card firmware upgrade file.

[0048] Step S12: If the firmware upgrade file exists in the memory of the management controller, a verification task for the firmware upgrade file is executed, so as to verify the firmware upgrade file through the verification task.

[0049] In this embodiment, if a firmware upgrade file exists in the memory of the management controller, a verification task for the firmware upgrade file is executed through a verification process, so as to perform version compliance verification and content integrity verification on the firmware upgrade file through the verification task. Specifically, the verification process (Check_RaidFw) is started by the management controller, and the verification process performs the following verifications: (1) extracting the version number of the firmware upgrade file and comparing it with the current independent disk redundant array card firmware version of the server, requiring that the upgrade version must be higher than the current version and be a compliant version released by the manufacturer (such as in the manufacturer's support list); (2) calculating the MD5 (Message-Digest Algorithm 5) hash value of the file and comparing it with the standard hash value provided by the manufacturer to ensure that the file has not been tampered with or damaged during transmission.

[0050] For example, if the Check_RaidFw process detects the presence of the file RaidFw_V3.1.0.bin (1.2MB) in memory, it analyzes its version number to V3.1.0, which is higher than the current server firmware version V2.5.8. This version is also confirmed by a query on the manufacturer's official website as being compatible with the server's operating system. Furthermore, if the calculated MD5 value matches the manufacturer's provided value (a1b2c3d4e5f67890123456abcdef), both checks are considered to have passed. The Trans_RaidFw process then proactively copies the file from the management controller's memory to the target storage area. If the verification fails (e.g., the version number is lower than the current version or the MD5 value is inconsistent), the file is discarded and an error log is recorded, preventing invalid firmware files from entering the upgrade process.

[0051] Step S13: If the verification passes, the firmware upgrade file is written to the target storage area, so that the server operating system can remotely upgrade the firmware of the redundant array of independent disks based on the firmware upgrade file in the target storage area. The target storage area is a dedicated storage area divided from the memory area mapped by the communication interface. The communication interface connects the management controller and the server operating system. The dedicated storage area is functionally isolated from other storage areas in the memory area.

[0052] Based on the above analysis, if the verification passes, the firmware upgrade file is written to the target storage area, allowing the server operating system to remotely upgrade the Redundant Array of Independent Disks (RAID) card firmware based on the firmware upgrade file in the target storage area. Specifically, if the verification passes, the firmware upgrade file is written to the target storage area via the first device file ( / dev / vgasharedmem), allowing the server operating system to retrieve the firmware upgrade file from the target storage area via the second device file ( / dev / vgamem) and remotely upgrade the Redundant Array of Independent Disks (RAID) card firmware based on the firmware upgrade file. The first device file is a device file on the management controller side, and the second device file is a device file on the server operating system side. The first and second device files both point to the target storage area. It should be noted that the target storage area is a dedicated storage area carved out of the memory area mapped by the communication interface. The communication interface includes a Video Graphics Array Interface (VGA). The memory area mapped by the VGA includes a video storage area and a target storage area. The video storage area is used to store video data, and the target storage area is used to store the firmware upgrade file.

[0053] Specifically, the management control and the server operating system use a video graphics array interface as the physical link for communication. This video graphics array interface is traditionally used by the server operating system to transmit video data to the management controller, and the address size that can be mapped is 64Mb. In actual server use, only 32Mb of space is traditionally used to transmit video data. However, this application creatively reallocates and utilizes this memory space: 63Mb of space is still reserved for normal transmission of video data, maintaining the original video communication function; the last 1Mb is divided into a dedicated target storage area for transmitting server operating system abnormal data and firmware upgrade files for independent disk redundant array cards. The device name of the video graphics array interface on the server operating system side is / dev / vgamem, and the device name on the management controller side is / dev / vgasharedmem. The interaction method between the server operating system and the management controller is named H2B (host to BMC). Because the two device files point to the same target storage area of ​​the video graphics array interface mapped memory, data transparent transmission from the management controller to the server operating system is achieved. This memory space reuse solution based on the video graphics array interface does not require additional hardware communication modules. It only implements the file transfer channel between the management controller and the server operating system in a software-defined manner. Without affecting the original video data transmission function, it provides a low-cost, highly compatible solution for the remote transmission of firmware upgrade files.

[0054] In this embodiment, the server operating system obtains a firmware upgrade file from a target storage area via a second device file and remotely upgrades the firmware of the Redundant Array of Independent Disks (RAID) card based on the firmware upgrade file. The process includes: setting an upgrade script in the server operating system; running the upgrade script to check whether the firmware upgrade file exists in the target storage area via the second device file at preset intervals; if the firmware upgrade file exists, invoking the upgrade program of the Redundant Array of Independent Disks card to remotely upgrade the firmware of the Redundant Array of Independent Disks card by executing the upgrade program. Exemplarily, a new upgrade script, Update_RaidFw.sh, is added to the server operating system and configured to run automatically after the server boots and enters the operating system. The upgrade script checks every hour whether the firmware upgrade file for the Redundant Array of Independent Disks card exists in / dev / vgamem. If the file exists, the upgrade process provided by the Redundant Array of Independent Disks card manufacturer is initiated, thereby remotely upgrading the firmware of the Redundant Array of Independent Disks card.

[0055] Furthermore, when there are multiple independent disk redundant array card firmware upgrade files, orderly management and batch upgrades need to be achieved through the index structure of the target storage area. Specifically, an index structure is created at the starting position of the target storage area; the index structure includes an identification field, a storage address field, a priority field, and a status field. The identification field records the device identification of the independent disk redundant array card, the storage address field records the storage location of the firmware upgrade file in the target storage area, the priority field records the upgrade priority of the firmware upgrade file, and the status field records the upgrade status of the independent disk redundant array card. According to the device identification and storage location, multiple firmware upgrade files are written to the target storage area in sequence, so that the server operating system can determine the upgrade order of each independent disk redundant array card according to the upgrade priority, remotely upgrade the firmware of each independent disk redundant array card according to the upgrade order, and update the upgrade status.

[0056] For example, a server is equipped with three RAID cards with device identifiers of RAID01, RAID02, and RAID03, and with priorities of RAID01 (high priority) > RAID03 (medium priority) > RAID02 (low priority). The user uploads three firmware files, RAID01_Fw.bin, RAID02_Fw.bin, and RAID03_Fw.bin, to the BMC memory through HTTPS (Hyper Text Transfer Protocol Secure). The BMC's Check_RaidFw process verifies the file version number (both higher than the current firmware version) and MD5 value (both match the manufacturer's standard) in sequence. After the verification passes, the Trans_RaidFw process is triggered, and an index table is created at the starting position of the target storage area (such as address 0x0). Each entry corresponds to the firmware file of a Raid card: Raid01_Fw.bin (high priority) has a storage address of 0x100, and the index entry is [Raid01, 0x100, High, Pending]; Raid03_Fw.bin (medium priority) has a storage address of 0x500, and the index entry is [Raid03, 0x500, Medium, Pending]; Raid02_Fw.bin (low priority) has a storage address of 0x900, and the index entry is [Raid02, 0x900, Low, Pending]. The script Update_RaidFw.sh on the server operating system reads the index table at preset intervals (such as every hour), determines the upgrade order as Raid01→Raid03→Raid02 based on the priority field, reads the firmware files at the corresponding addresses in sequence, and calls the manufacturer's upgrade program to perform the upgrade. After the upgrade is successful, the status is updated to success. If the Raid02 upgrade fails, the status is updated to failure and an error log is recorded. In this way, through the index structure and priority mechanism, this application can achieve batch management of multiple devices, avoid manual operations one by one, automatically schedule the upgrade order by priority, and track the progress in real time through the status field, which is convenient for troubleshooting.

[0057] A conflict arbitration mechanism has also been designed: when multiple firmware upgrade files have the same priority, a temporary scheduling queue is generated based on the firmware version release time or the manufacturer's recommended sequence to ensure an orderly upgrade process. Specifically, by parsing the firmware file metadata or manufacturer signature information, the system extracts the version release timestamp (e.g., 202506011430) and the manufacturer's recommended upgrade sequence identifier (e.g., Vendor_Seq_001). When files with the same priority (e.g., both are "High") are detected, the system automatically compares their release times, with the newer file being prioritized in the scheduling queue. If the release times are the same, the system uses the manufacturer's predefined recommended sequence identifier (e.g., numerical or alphabetical) to generate a temporary execution queue. For example, if file A (version v3.1.0, release time 20250601, vendor sequence 002) and file B (version v3.1.0, release time 20250601, vendor sequence 001) both have a high priority, file B will be executed first because vendor sequence 001 is lower than 002. It can be seen that this mechanism avoids firmware overwrite conflicts or resource preemption problems caused by out-of-order execution through standardized metadata parsing and regularized arbitration logic.

[0058] This application provides a RAID card firmware upgrade solution for servers on specific central processing unit platforms, driven by a baseboard management controller. This solution supports network transmission of RAID card firmware files to BMC memory, which is then verified by the BMC and transferred to the server's operating system (OS) to complete the RAID card firmware upgrade. This application innovatively uses an H2B approach to transfer files from the BMC to the server OS. This method reduces reliance on manual operations, lowers labor costs and error rates, improves upgrade efficiency, and meets the needs of specific central processing unit platform server customers for remote RAID card firmware upgrades.

[0059] It can be seen that the present application proposes a remote upgrade method for the firmware of an independent disk redundant array card, which is applied to a management controller, including: detecting whether there is a firmware upgrade file for the independent disk redundant array card in the memory of the management controller; if the firmware upgrade file exists in the memory of the management controller, executing a verification task for the firmware upgrade file so as to verify the firmware upgrade file through the verification task; if the verification passes, writing the firmware upgrade file to a target storage area so that the server operating system can remotely upgrade the firmware of the independent disk redundant array card based on the firmware upgrade file in the target storage area; wherein the target storage area is a dedicated storage area divided in the memory area mapped by the communication interface, the communication interface connects the management controller and the server operating system, and the dedicated storage area is functionally isolated from other storage areas in the memory area. It can be seen that the present application first detects whether there is a firmware upgrade file for the independent disk redundant array card in the memory of the management controller, and if so, executes a verification task to verify the file. After the verification passes, the file is written to the target storage area divided in the memory mapped by the communication interface, so that the server operating system can remotely upgrade the firmware of the independent disk redundant array card based on the file. In this way, this application uses the management controller to automatically detect firmware upgrade files in memory, replacing the manual download, decompression, and file transfer process. This avoids upgrade failures caused by missed files, incorrect version selection, or transmission corruption. Furthermore, through verification tasks, automated file verification reduces the risk of manual misjudgment, solves the problem of tedious and error-prone manual operations, avoids hardware failures caused by instruction set and bus protocol conflicts, and ensures the stability of remote firmware upgrades for redundant array of independent disks.

[0060] Correspondingly, the present application also discloses a remote upgrade device for a redundant array of independent disks card firmware, which is applied to a management controller, see Figure 3 As shown, the device includes:

[0061] The file detection module 11 is used to detect whether there is a firmware upgrade file for the redundant array of independent disks card in the memory of the management controller;

[0062] A file verification module 12 is configured to execute a verification task for the firmware upgrade file if the firmware upgrade file exists in the memory of the management controller, so as to verify the firmware upgrade file through the verification task;

[0063] The firmware upgrade module 13 is configured to write the firmware upgrade file to a target storage area if verification is passed, so that the server operating system can remotely upgrade the firmware of the redundant array of independent disks based on the firmware upgrade file in the target storage area. The target storage area is a dedicated storage area divided from the memory area mapped by the communication interface. The communication interface connects the management controller and the server operating system, and the dedicated storage area is functionally isolated from other storage areas in the memory area.

[0064] Among them, for more specific working processes of the above modules, please refer to the corresponding contents disclosed in the aforementioned embodiments, which will not be repeated here.

[0065] It can be seen that the present application proposes a remote upgrade method for the firmware of an independent disk redundant array card, which is applied to a management controller, including: detecting whether there is a firmware upgrade file for the independent disk redundant array card in the memory of the management controller; if the firmware upgrade file exists in the memory of the management controller, executing a verification task for the firmware upgrade file so as to verify the firmware upgrade file through the verification task; if the verification passes, writing the firmware upgrade file to a target storage area so that the server operating system can remotely upgrade the firmware of the independent disk redundant array card based on the firmware upgrade file in the target storage area; wherein the target storage area is a dedicated storage area divided in the memory area mapped by the communication interface, the communication interface connects the management controller and the server operating system, and the dedicated storage area is functionally isolated from other storage areas in the memory area. It can be seen that the present application first detects whether there is a firmware upgrade file for the independent disk redundant array card in the memory of the management controller, and if so, executes a verification task to verify the file. After the verification passes, the file is written to the target storage area divided in the memory mapped by the communication interface, so that the server operating system can remotely upgrade the firmware of the independent disk redundant array card based on the file. In this way, this application uses the management controller to automatically detect firmware upgrade files in memory, replacing the manual download, decompression, and file transfer process. This avoids upgrade failures caused by missed files, incorrect version selection, or transmission corruption. Furthermore, through verification tasks, automated file verification reduces the risk of manual misjudgment, solves the problem of tedious and error-prone manual operations, avoids hardware failures caused by instruction set and bus protocol conflicts, and ensures the stability of remote firmware upgrades for redundant array of independent disks.

[0066] Furthermore, an embodiment of the present application also provides an electronic device. Figure 4 This is a structural diagram of an electronic device 20 according to an exemplary embodiment. The content in the diagram should not be considered as any limitation to the scope of application of the present application.

[0067] Figure 4 This is a schematic diagram of the structure of an electronic device 20 provided in an embodiment of the present application. The electronic device 20 may include: at least one processor 21, at least one memory 22, a display 23, an input / output interface 24, a communication interface 25, a power supply 26, and a communication bus 27. The memory 22 is used to store a computer program, which is loaded and executed by the processor 21 to implement the relevant steps of the remote firmware upgrade method for a redundant array of independent disks card disclosed in any of the aforementioned embodiments. Furthermore, the electronic device 20 in this embodiment may be a computer.

[0068] In this embodiment, the power supply 26 is used to provide operating voltage for each hardware device on the electronic device 20; the communication interface 25 can create a data transmission channel between the electronic device 20 and the external device. The communication protocol it follows is any communication protocol that can be applied to the technical solution of this application and is not specifically limited here; the input and output interface 24 is used to obtain external input data or output data to the outside world. Its specific interface type can be selected according to specific application needs and is not specifically limited here.

[0069] Furthermore, the memory 22, as a resource storage medium, may be a read-only memory, random access memory, a magnetic disk, or an optical disk. The resources stored therein may include a computer program 221, which may be stored in a temporary or permanent manner. In addition to including a computer program capable of performing the method for remotely upgrading the firmware of a redundant array of independent disks card executed by the electronic device 20 as disclosed in any of the aforementioned embodiments, the computer program 221 may further include computer programs capable of performing other specific tasks.

[0070] Furthermore, an embodiment of the present application also discloses a computer-readable storage medium for storing a computer program; wherein, when the computer program is executed by a processor, the aforementioned method for remotely upgrading the firmware of the redundant array of independent disks card is implemented.

[0071] For the specific steps of this method, please refer to the corresponding contents disclosed in the aforementioned embodiments, which will not be repeated here.

[0072] The various embodiments in this application are described in a progressive manner, and each embodiment focuses on the differences from other embodiments. The same or similar parts between the various embodiments can be referred to each other. For the devices disclosed in the embodiments, since they correspond to the methods disclosed in the embodiments, the description is relatively simple, and the relevant parts can be referred to the method part.

[0073] Professionals may further appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of the two. In order to clearly illustrate the interchangeability of hardware and software, the above description has generally described the components and steps of each example according to their functions. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professionals and technicians may 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.

[0074] The steps of the methods or algorithms described in conjunction with the embodiments disclosed herein may be implemented directly using hardware, a software module executed by a processor, or a combination of the two. The software module may be placed in random access memory (RAM), internal memory, read-only memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, a hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art.

[0075] Finally, it should be noted that, in this document, relational terms such as first and second, etc., are used only to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any actual relationship or order between these entities or operations. Moreover, the terms "comprises," "comprising," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or device comprising a series of elements includes not only those elements, but also other elements not explicitly listed, or elements inherent to such process, method, article, or device. In the absence of further limitations, an element defined by the phrase "comprising a ..." does not exclude the presence of additional identical elements in the process, method, article, or device comprising the element.

[0076] The above describes in detail the remote firmware upgrade method, apparatus, device, and storage medium for a redundant array of independent disks card provided by the present application. Specific examples are used herein to illustrate the principles and implementation methods of the present application. The description of the above embodiments is intended only to help understand the method and core concept of the present application. Furthermore, those skilled in the art will appreciate that variations in the specific implementation methods and scope of application may occur based on the concepts of the present application. Therefore, the contents of this specification should not be construed as limiting the present application.

Claims

1. A remote upgrade method for redundant array of independent disks card firmware, characterized in that: Applicable to management controllers, including: Check whether there is a firmware upgrade file for the redundant array of independent disks card in the management controller memory; If the firmware upgrade file exists in the memory of the management controller, executing a verification task for the firmware upgrade file, so as to verify the firmware upgrade file through the verification task; If the verification passes, the firmware upgrade file is written to the target storage area so that the server operating system remotely upgrades the firmware of the redundant array of independent disks based on the firmware upgrade file in the target storage area; wherein the target storage area is a dedicated storage area divided from the memory area mapped by the communication interface, the communication interface connects the management controller and the server operating system, and the dedicated storage area is functionally isolated from other storage areas in the memory area.

2. The method for upgrading the firmware of a redundant array of independent disks card according to claim 1, wherein: The communication interface includes a video graphics array interface, and the memory area mapped by the video graphics array interface includes a video storage area and the target storage area; wherein the video storage area is used to store video data, and the target storage area is used to store the firmware upgrade file.

3. The method for upgrading the firmware of a redundant array of independent disks card according to claim 1, wherein: If the verification passes, the firmware upgrade file is written to the target storage area so that the server operating system remotely upgrades the firmware of the redundant array of independent disks based on the firmware upgrade file in the target storage area, including: If the verification passes, the firmware upgrade file is written to the target storage area through the first device file, so that the server operating system obtains the firmware upgrade file from the target storage area through the second device file, and remotely upgrades the firmware of the redundant array of independent disks based on the firmware upgrade file; wherein the first device file is a device file on the management controller side, the second device file is a device file on the server operating system side, and the first device file and the second device file both point to the target storage area; The process of the server operating system obtaining the firmware upgrade file from the target storage area through the second device file and remotely upgrading the firmware of the redundant array of independent disks card based on the firmware upgrade file includes: Setting an upgrade script in the server operating system; Running the upgrade script to check whether the firmware upgrade file exists in the target storage area through the second device file at a preset interval; If the firmware upgrade file exists, the upgrade program of the redundant array of independent disks card is called, so as to remotely upgrade the firmware of the redundant array of independent disks card by executing the upgrade program.

4. The method for upgrading the firmware of a redundant array of independent disks card according to claim 1, wherein: The step of detecting whether there is a firmware upgrade file for the redundant array of independent disks card in the memory of the management controller includes: Scan all files in the memory of the management controller according to a preset period through a detection process; For all files in the memory of the management controller, extract feature information of all the files, and compare the feature information of all the files with preset firmware file information; Based on whether there is a matching file in the comparison result, it is determined whether there is the firmware upgrade file of the redundant array of independent disks card in the memory of the management controller.

5. The method for upgrading the firmware of a redundant array of independent disks card according to claim 4, wherein: If the firmware upgrade file exists in the memory of the management controller, executing a verification task for the firmware upgrade file, so as to verify the firmware upgrade file through the verification task, includes: If there is a matching file in the comparison result, determining that the firmware upgrade file of the redundant array of independent disks card exists in the memory of the management controller; The verification task for the firmware upgrade file is executed through the verification process, so as to perform version compliance verification and content integrity verification on the firmware upgrade file through the verification task.

6. The method for upgrading the firmware of a redundant array of independent disks card according to any one of claims 1 to 5, wherein: Also includes: An index structure is created at a starting position of the target storage area; wherein the index structure includes an identification field, a storage address field, a priority field, and a status field, wherein the identification field records a device identification of the redundant array of independent disks card, the storage address field records a storage location of the firmware upgrade file in the target storage area, the priority field records an upgrade priority of the firmware upgrade file, and the status field records an upgrade status of the redundant array of independent disks card.

7. The method for upgrading the firmware of a redundant array of independent disks card according to claim 6, wherein: Writing the firmware upgrade file into a target storage area so that the server operating system remotely upgrades the firmware of the redundant array of independent disks card based on the firmware upgrade file in the target storage area includes: The plurality of firmware upgrade files are sequentially written into the target storage area according to the device identifier and the storage location, so that the server operating system determines an upgrade order for each of the redundant array of independent disks cards according to the upgrade priority, remotely upgrades the firmware of each redundant array of independent disks card sequentially according to the upgrade order, and updates the corresponding upgrade status after the upgrade is completed.

8. A remote upgrade device for redundant array of independent disks card firmware, characterized in that: Applicable to management controllers, including: A file detection module is used to detect whether there is a firmware upgrade file of the independent disk redundant array card in the memory of the management controller; a file verification module, configured to execute a verification task for the firmware upgrade file if the firmware upgrade file exists in the memory of the management controller, so as to verify the firmware upgrade file through the verification task; The firmware upgrade module is configured to write the firmware upgrade file to a target storage area if verification is passed, so that the server operating system can remotely upgrade the firmware of the redundant array of independent disks based on the firmware upgrade file in the target storage area; wherein the target storage area is a dedicated storage area divided from the memory area mapped by the communication interface, the communication interface connects the management controller and the server operating system, and the dedicated storage area is functionally isolated from other storage areas in the memory area.

9. An electronic device, characterized in that: include: Memory, used to store computer programs; A processor is configured to execute the computer program to implement the remote upgrade method for the redundant array of independent disks card firmware according to any one of claims 1 to 7.

10. A computer-readable storage medium, characterized in that Used to store a computer program; wherein, when the computer program is executed by a processor, the remote upgrade method of the redundant array of independent disks card firmware according to any one of claims 1 to 7 is implemented.