Basic input and output system updating method and device, equipment and medium

Through a basic input and output system update method, including obtaining preset boot images and BIOS option values, reading and translating the BIOS binary files of the server, the problem of low BIOS update efficiency in the prior art is solved, and automatic customized updates and efficiency improvements are achieved.

CN119598472APending Publication Date: 2025-03-11INSPUR SUZHOU INTELLIGENT TECH CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202411748806.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-30
Publication Date
2025-03-11

AI Technical Summary

Technical Problem

The prior art is difficult to improve the efficiency of the BIOS options and startup images of the server, resulting in frequent development of new versions, which is time-consuming and labor-intensive.

Method used

Provide a basic input and output system update method, including obtaining preset startup image and BIOS option values, reading the server's BIOS binary file, translating it into a target format file and replacing the startup image and assignment options, and finally writing the server's BIOS and verifying the update result.

Benefits of technology

It realizes automatic customized update of BIOS, improves the server's BIOS options and the update efficiency of boot images, and reduces the time and cost of manual development and testing.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119598472A_ABST
    Figure CN119598472A_ABST
Patent Text Reader

Abstract

The invention discloses a basic input and output system updating method and device, equipment and a medium in the technical field of computers. The method comprises the following steps: after determining a new preset startup image and a basic input / output system option value, reading a binary file of a basic input / output system in a server; translating the binary file into a target format file, replacing the startup image in the target format file with a preset startup image, and assigning a basic input / output system option value to a corresponding option in the target format file to obtain a new file; after the new file is used for flashing the basic input and output system in the server, the current startup image and the current option value of the basic input and output system of the server are verified, so that automatic customized updating of the BIOS is realized, and the updating efficiency of the BIOS options and the startup image of the server is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of computer technology, and in particular to a basic input and output system updating method, device, equipment and medium. Background Art

[0002] Currently, the server's BIOS (Basic Input Output System) options and boot images can be customized on demand. Generally, developers customize scripts based on user needs and conduct internal self-tests. After the self-tests pass, new BIOS versions are released. Current customization projects include option customization, function development, logo customization, and many other projects. Customization requirements are often added, resulting in the need to frequently develop new BIOS versions, which is time-consuming and labor-intensive.

[0003] Therefore, how to improve the updating efficiency of the BIOS options and boot images of the server is a problem that those skilled in the art need to solve. Summary of the invention

[0004] In view of this, the purpose of this application is to provide a basic input and output system update method, device, equipment and medium to improve the update efficiency of the BIOS options and boot images of the server. The specific scheme is as follows:

[0005] In a first aspect, the present application provides a basic input and output system updating method, comprising:

[0006] Get the default boot image and basic input and output system option values;

[0007] Read the binary file of the basic input and output system in the server;

[0008] Translating the binary file into a target format file, replacing the boot image in the target format file with the preset boot image, and assigning the basic input and output system option value to the corresponding option in the target format file to obtain a new file;

[0009] After the basic input and output system in the server is flashed with the new file, the current boot image and the current basic input and output system option value of the server are verified.

[0010] Optionally, obtaining a preset boot image and basic input and output system option values ​​includes:

[0011] In response to a submission instruction of the preset boot image and the basic input / output system option value, the preset boot image and the basic input / output system option value are extracted from the submission instruction.

[0012] Optionally, read binary files of the basic input and output system in the server, including:

[0013] A preset reading tool is called to read a binary file of a basic input and output system in the server.

[0014] Optionally, translating the binary file into a target format file, replacing a boot image in the target format file with the preset boot image, and assigning the basic input and output system option value to a corresponding option in the target format file includes:

[0015] Make sure the target format is Unicode encoding format;

[0016] Translate the binary file into a Unicode encoding format file;

[0017] Calling a preset reading tool to determine the boot image position and the assignment position in the Unicode encoding format file;

[0018] Replacing the boot image in the target format file with the preset boot image at the boot image position;

[0019] The basic input and output system option value is assigned to the corresponding option in the target format file at the assignment position.

[0020] Optionally, calling a preset reading tool to determine the boot image position and the assignment position in the UNICODE encoding format file includes:

[0021] The preset reading tool is called to match the boot image position character information and the assignment position character information in the UNICODE encoding format file to determine the boot image position and the assignment position.

[0022] Optionally, verifying the current boot image and the current basic input and output system option value of the server includes:

[0023] After restarting the server, obtaining the current boot image and the current basic input and output system option value;

[0024] Calculating an image checksum of the current boot image and a value checksum of the current basic input and output system option value;

[0025] Comparing the image checksum with the checksum of the preset boot image;

[0026] If the image checksum is consistent with the checksum of the preset startup image, it is determined that the current startup image of the server has passed the check; otherwise, it is determined that the current startup image of the server has failed the check;

[0027] comparing the value checksum with the checksum of the BIOS option value;

[0028] If the value checksum is consistent with the checksum of the basic input and output system option value, it is determined that the current basic input and output system option value of the server has passed the check; otherwise, it is determined that the current basic input and output system option value of the server has failed the check.

[0029] Optionally, calculating the value checksum of the current basic input / output system option value includes:

[0030] Determine the option value for this modification;

[0031] Calculate the checksum of the option value that is modified this time.

[0032] In a second aspect, the present application provides a basic input and output system updating device, comprising:

[0033] An acquisition module, used to obtain a preset boot image and basic input and output system option values;

[0034] A reading module, used for reading binary files of a basic input and output system in a server;

[0035] a modification module, configured to translate the binary file into a target format file, replace the boot image in the target format file with the preset boot image, and assign the basic input and output system option value to the corresponding option in the target format file to obtain a new file;

[0036] The update module is used to verify the current boot image and the current basic input output system option value of the server after the basic input output system in the server is flashed with the new file.

[0037] Optionally, the acquisition module is specifically used for:

[0038] In response to a submission instruction of the preset boot image and the basic input / output system option value, the preset boot image and the basic input / output system option value are extracted from the submission instruction.

[0039] Optionally, the reading module is specifically used for:

[0040] A preset reading tool is called to read a binary file of a basic input and output system in the server.

[0041] Optionally, the modification module is specifically used for:

[0042] Make sure the target format is Unicode encoding format;

[0043] Translate the binary file into a Unicode encoding format file;

[0044] Calling a preset reading tool to determine the boot image position and the assignment position in the Unicode encoding format file;

[0045] Replacing the boot image in the target format file with the preset boot image at the boot image position;

[0046] The basic input and output system option value is assigned to the corresponding option in the target format file at the assignment position.

[0047] Optionally, the modification module is specifically used for:

[0048] The preset reading tool is called to match the boot image position character information and the assignment position character information in the UNICODE encoding format file to determine the boot image position and the assignment position.

[0049] Optionally, the update module is specifically used for:

[0050] After restarting the server, obtaining the current boot image and the current basic input and output system option value;

[0051] Calculating an image checksum of the current boot image and a value checksum of the current basic input and output system option value;

[0052] Comparing the image checksum with the checksum of the preset boot image;

[0053] If the image checksum is consistent with the checksum of the preset startup image, it is determined that the current startup image of the server has passed the check; otherwise, it is determined that the current startup image of the server has failed the check;

[0054] comparing the value checksum with the checksum of the BIOS option value;

[0055] If the value checksum is consistent with the checksum of the basic input and output system option value, it is determined that the current basic input and output system option value of the server has passed the check; otherwise, it is determined that the current basic input and output system option value of the server has failed the check.

[0056] Optionally, the update module is specifically used for:

[0057] Determine the option value for this modification;

[0058] Calculate the checksum of the option value that is modified this time.

[0059] In a third aspect, the present application provides an electronic device, including:

[0060] Memory for storing computer programs;

[0061] The processor is used to execute the computer program to implement the basic input and output system updating method disclosed above.

[0062] In a fourth aspect, the present application provides a non-volatile storage medium for storing a computer program, wherein the computer program, when executed by a processor, implements the aforementioned disclosed basic input and output system update method.

[0063] In a fifth aspect, the present application provides a computer program product, including a computer program / instruction, which, when executed by a processor, implements the steps of the basic input and output system updating method disclosed above.

[0064] It can be seen from the above scheme that the present application provides a basic input and output system update method, including: obtaining a preset boot image and a basic input and output system option value; reading a binary file of the basic input and output system in a server; translating the binary file into a target format file, and replacing the boot image in the target format file with the preset boot image, assigning the basic input and output system option value to the corresponding option in the target format file to obtain a new file; after using the new file to flash the basic input and output system in the server, verifying the current boot image and the current basic input and output system option value of the server.

[0065] It can be seen that after determining the new preset boot image and basic input and output system option value, the present application reads the binary file of the basic input and output system in the server; translates the binary file into a target format file, and replaces the boot image in the target format file with the preset boot image, and assigns the basic input and output system option value to the corresponding option in the target format file to obtain a new file; after flashing the basic input and output system in the server with the new file, the current boot image and the current basic input and output system option value of the server are verified, thereby realizing automatic customized update of BIOS and improving the update efficiency of the BIOS options and boot images of the server.

[0066] Correspondingly, a basic input / output system updating device, equipment and medium provided by the present application also have the above-mentioned technical effects. BRIEF DESCRIPTION OF THE DRAWINGS

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

[0068] Figure 1 A flowchart of a basic input and output system updating method disclosed in this application;

[0069] Figure 2 A flow chart of another basic input and output system updating method disclosed in the present application;

[0070] Figure 3 A schematic diagram of a basic input and output system updating device disclosed in the present application;

[0071] Figure 4 A schematic diagram of an electronic device disclosed in this application;

[0072] Figure 5 A server structure diagram provided for this application;

[0073] Figure 6 A terminal structure diagram provided for this application. DETAILED DESCRIPTION

[0074] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other examples obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.

[0075] At present, the BIOS options and boot images of servers can be customized on demand. Generally, developers customize scripts according to user needs and perform internal self-tests, and release new BIOS versions after passing the self-tests. Current customization projects include many projects such as option customization, function development, and Logo customization, and customized requirements are often added, resulting in the need to frequently develop new BIOS versions, which is time-consuming and laborious. To this end, the present application provides a basic input and output system update solution that can realize automatic customized updates of BIOS and improve the update efficiency of BIOS options and boot images of servers.

[0076] See also Figure 1 As shown, the embodiment of the present application discloses a basic input and output system update method, including:

[0077] S101, obtaining a preset boot image and basic input and output system option values.

[0078] In this embodiment, the preset boot image and the basic input and output system option value can be set by the user. The basic input and output system option value can be the option value of all options of the BIOS, or the option value of some options of the BIOS.

[0079] In one embodiment, obtaining a preset boot image and a basic input / output system option value includes: responding to a submission instruction of the preset boot image and the basic input / output system option value, extracting the preset boot image and the basic input / output system option value from the submission instruction.

[0080] S102: Read the binary file of the basic input and output system in the server.

[0081] In one implementation, reading a binary file of a basic input / output system in a server includes: calling a preset reading tool to read the binary file of the basic input / output system in the server.

[0082] S103, translating the binary file into a target format file, replacing the boot image in the target format file with a preset boot image, assigning the basic input and output system option value to the corresponding option in the target format file, and obtaining a new file.

[0083] In one embodiment, a binary file is translated into a target format file, a boot image in the target format file is replaced with a preset boot image, and a basic input / output system option value is assigned to a corresponding option in the target format file, including: determining that the target format is a Unicode encoding format; translating the binary file into a Unicode encoding format file; calling a preset reading tool to determine a boot image position and an assignment position in the Unicode encoding format file; replacing the boot image in the target format file with a preset boot image at the boot image position; and assigning the basic input / output system option value to a corresponding option in the target format file at the assignment position.

[0084] Among them, calling the preset reading tool to determine the boot image position and the assignment position in the UNICODE encoding format file includes: calling the preset reading tool to match the boot image position character information and the assignment position character information in the UNICODE encoding format file to determine the boot image position and the assignment position.

[0085] S104: After the basic input / output system in the server is flashed with the new file, the current boot image of the server and the current basic input / output system option value are verified.

[0086] In one embodiment, the current boot image and the current basic input / output system option value of the server are verified, including: after restarting the server, obtaining the current boot image and the current basic input / output system option value; calculating the image checksum of the current boot image and the value checksum of the current basic input / output system option value; comparing the image checksum with the checksum of a preset boot image; if the image checksum is consistent with the checksum of the preset boot image, it is determined that the current boot image of the server has passed the verification; otherwise, it is determined that the current boot image of the server has failed the verification; comparing the value checksum with the checksum of the basic input / output system option value; if the value checksum is consistent with the checksum of the basic input / output system option value, it is determined that the current basic input / output system option value of the server has passed the verification; otherwise, it is determined that the current basic input / output system option value of the server has failed the verification.

[0087] In one implementation, calculating the value checksum of the current basic input / output system option value includes: determining the option value modified this time; calculating the value checksum of the option value modified this time, that is, only checking the option value modified this time.

[0088] It can be seen that after determining the new preset boot image and basic input / output system option value, this embodiment reads the binary file of the basic input / output system in the server; translates the binary file into a target format file, and replaces the boot image in the target format file with the preset boot image, and assigns the basic input / output system option value to the corresponding option in the target format file to obtain a new file; after flashing the basic input / output system in the server with the new file, the current boot image and the current basic input / output system option value of the server are verified, thereby realizing automatic customized update of BIOS and improving the update efficiency of the BIOS options and boot images of the server.

[0089] See also Figure 2 , another basic input and output system update process includes:

[0090] Customer customization: The customization system receives customer customization requirements, which mainly include option customization and logo customization of the boot image.

[0091] Demand analysis: Different tasks and implementation methods are assigned according to customer needs. To customize the logo, call the logo replacement code, and then refresh the logo part in-band. To customize the options, call the option modification code, and then refresh the specified option value part in-band to prepare for subsequent development.

[0092] Development and customization: The code identifies and analyzes the assigned tasks based on the requirements, enters the specified conditions for customized options or logos, and customizes the exclusive BIOS version.

[0093] In-band refresh: The system calls an automated script to automatically modify the logo and options, and then calls the BIOS tool to flash the specified area. Modify the specified part of the BIOS code.

[0094] Server script internal testing: upload the automation script to the server to test the practicality and credibility of the automation script.

[0095] Version release: After the developed BIOS version passes internal testing and no problems are found, the customized version will be automatically released to the official website.

[0096] This embodiment does not need to modify the BIOS code file, and implements one-click modification of BIOS options and boot images in-band through an automated program. This solution reads the user's customized data for options and logos through an automated program, and at the same time calls the BIOS flash tool to flash the BIOS logo area and option content in-band. The specific method is: first read the BIOS version on the current server as a binary file through the BIOS reading tool, and then translate the ANSI-encoded binary file into a Unicode encoding format. This format can directly modify the option value, find the location coordinates of the logo and all options through the BIOS reading tool, and flash the specified BIOS part to replace and modify the logo and option values. Afterwards, the modified logo and BIOS options are verified. The verification method here can be: calculate the checksum or hash value for comparison to ensure that the modified content in the BIOS has not been tampered with or wrong.

[0097] The detailed steps of a possible verification method include:

[0098] 1. Determine the verification content: First determine the scope of the content that needs to be verified, including the modified options and the location of the logo.

[0099] 2. Calculate the checksum: For each option or logo that is modified, you can calculate its checksum. The checksum is the value obtained by adding or XORing the data.

[0100] 3. Store checksum: Store the calculated checksum value in a specific location in the BIOS file for comparison during subsequent verification.

[0101] 4. Verification process: When the BIOS starts, the automated code can read the locations of the modified options and logos, and then calculate the checksum values ​​of these locations.

[0102] 5. Checksum comparison: Compare the calculated checksum value with the checksum value stored in the BIOS file. If the two are consistent, it means that the modified content has not been tampered with; if they are inconsistent, it may mean that the content has been modified or an error has occurred.

[0103] 6. Handling verification failure: If the verification fails, you can take appropriate measures, such as restoring the original BIOS content or prompting the user to perform repair operations.

[0104] 7. Log Recording: It is recommended to record logs during the verification process, including verification results, checksum values, and other information, for subsequent analysis and troubleshooting.

[0105] It should be noted that verifying the correctness of the modified content in the BIOS can ensure that the BIOS can correctly identify and load the customized content when running, while ensuring the stability and security of the system.

[0106] This embodiment does not need to modify the BIOS code, and can modify the options and logo of the BIOS file in-band, which greatly improves production efficiency and effectively saves production test costs. Specifically, the AMD bin file is operated in the boot state to achieve the customization of options and logos, and the modified BIOS file is automatically verified, which greatly improves the efficiency and security of BIOS customization, reduces the cost of human output, and ensures the security of BIOS modification.

[0107] A basic input-output system updating device provided in an embodiment of the present application is introduced below. The basic input-output system updating device described below can be referenced to other embodiments described in this document.

[0108] See also Figure 3 As shown, the embodiment of the present application discloses a basic input and output system updating device, including:

[0109] The acquisition module 301 is used to acquire a preset boot image and basic input and output system option values;

[0110] A reading module 302 is used to read a binary file of a basic input and output system in a server;

[0111] The modification module 303 is used to translate the binary file into a target format file, replace the boot image in the target format file with a preset boot image, and assign the basic input and output system option value to the corresponding option in the target format file to obtain a new file;

[0112] The updating module 304 is used to verify the current boot image and the current BIOS option value of the server after the BIOS in the server is updated with the new file.

[0113] In one implementation, the acquisition module is specifically used to:

[0114] In response to a submit instruction for presetting the boot image and the basic input / output system option value, the presetting boot image and the basic input / output system option value are extracted from the submit instruction.

[0115] In one embodiment, the reading module is specifically used for:

[0116] Call the preset reading tool to read the binary file of the basic input and output system in the server.

[0117] In one embodiment, the modification module is specifically used to:

[0118] Make sure the target format is Unicode encoding format;

[0119] Translate binary files into Unicode encoding format files;

[0120] Call the preset reading tool to determine the boot image position and assignment position in the Unicode encoding format file;

[0121] Replace the boot image in the target format file with the preset boot image at the boot image position;

[0122] Assign the basic input and output system option value to the corresponding option in the target format file at the assignment position.

[0123] In one embodiment, the modification module is specifically used to:

[0124] The preset reading tool is called to match the boot image position character information and the assignment position character information in the UNICODE encoding format file to determine the boot image position and the assignment position.

[0125] In one implementation, the update module is specifically used to:

[0126] After restarting the server, get the current boot image and current basic input and output system option values;

[0127] Calculate the image checksum of the current boot image and the value checksum of the current basic input and output system option value;

[0128] Compare the image checksum with the checksum of the preset boot image;

[0129] If the image checksum is consistent with the checksum of the preset startup image, it is determined that the current startup image of the server has passed the verification; otherwise, it is determined that the current startup image of the server has failed the verification;

[0130] Compare the value checksum with the checksum of the BIOS option value;

[0131] If the value checksum is consistent with the checksum of the basic input and output system option value, it is determined that the current basic input and output system option value of the server has passed the check; otherwise, it is determined that the current basic input and output system option value of the server has failed the check.

[0132] In one implementation, the update module is specifically used to:

[0133] Determine the option value for this modification;

[0134] Calculate the checksum of the option value that is modified this time.

[0135] Among them, for more specific working processes of each module and unit in this embodiment, reference can be made to the corresponding contents disclosed in the aforementioned embodiments, which will not be repeated here.

[0136] It can be seen that this embodiment provides a basic input and output system update device, which realizes automatic customized update of BIOS and improves the update efficiency of BIOS options and boot images of the server.

[0137] An electronic device provided in an embodiment of the present application is introduced below. The electronic device described below can be referenced to other embodiments described in this document.

[0138] See also Figure 4 As shown, the embodiment of the present application discloses an electronic device, including:

[0139] Memory 401, used for storing computer programs;

[0140] The processor 402 is used to execute the computer program to implement the method disclosed in any of the above embodiments.

[0141] In this embodiment, when the processor executes the computer program stored in the memory, the following steps can be specifically implemented: obtaining a preset boot image and a basic input / output system option value; reading a binary file of the basic input / output system in the server; translating the binary file into a target format file, and replacing the boot image in the target format file with the preset boot image, assigning the basic input / output system option value to the corresponding option in the target format file to obtain a new file; after flashing the basic input / output system in the server with the new file, verifying the current boot image and the current basic input / output system option value of the server.

[0142] In this embodiment, when the processor executes the computer program stored in the memory, the following steps can be specifically implemented: in response to a submission instruction of a preset boot image and basic input / output system option value, the preset boot image and basic input / output system option value are extracted from the submission instruction.

[0143] In this embodiment, when the processor executes the computer program stored in the memory, the following steps may be specifically implemented: calling a preset reading tool to read a binary file of a basic input and output system in the server.

[0144] In this embodiment, when the processor executes the computer program stored in the memory, the following steps can be specifically implemented: determining that the target format is the Unicode encoding format; translating the binary file into a Unicode encoding format file; calling a preset reading tool to determine the boot image position and the assignment position in the Unicode encoding format file; replacing the boot image in the target format file with the preset boot image at the boot image position; and assigning the basic input and output system option value to the corresponding option in the target format file at the assignment position.

[0145] In this embodiment, when the processor executes the computer program stored in the memory, the following steps can be specifically implemented: calling a preset reading tool to match the boot image position character information and the assignment position character information in the UNICODE encoding format file to determine the boot image position and the assignment position.

[0146] In this embodiment, when the processor executes the computer program stored in the memory, the following steps can be specifically implemented: after restarting the server, obtaining the current boot image and the current basic input and output system option value; calculating the image checksum of the current boot image and the value checksum of the current basic input and output system option value; comparing the image checksum with the checksum of the preset boot image; if the image checksum is consistent with the checksum of the preset boot image, it is determined that the current boot image of the server has passed the check; otherwise, it is determined that the current boot image of the server has failed the check; comparing the value checksum with the checksum of the basic input and output system option value; if the value checksum is consistent with the checksum of the basic input and output system option value, it is determined that the current basic input and output system option value of the server has passed the check; otherwise, it is determined that the current basic input and output system option value of the server has failed the check.

[0147] In this embodiment, when the processor executes the computer program stored in the memory, the following steps may be specifically implemented: determining the option value modified this time; and calculating the value checksum of the option value modified this time.

[0148] Furthermore, the present application also provides an electronic device. The electronic device can be Figure 5 The server shown can also be Figure 6 Terminal shown. Figure 5 and Figure 6 All of them are structural diagrams of electronic devices according to an exemplary embodiment, and the contents in the diagrams cannot be regarded as any limitation on the scope of use of the present application.

[0149] Figure 5 A schematic diagram of the structure of a server provided in an embodiment of the present application. The server may specifically include: at least one processor, at least one memory, a power supply, a communication interface, an input / output interface, and a communication bus. The memory is used to store a computer program, and the computer program is loaded and executed by the processor to implement the relevant steps in the basic input / output system update disclosed in any of the aforementioned embodiments.

[0150] In this embodiment, the power supply is used to provide working voltage for each hardware device on the server; the communication interface can create a data transmission channel between the server and external devices, and the communication protocol it follows is any communication protocol that can be applied to the technical solution of the present application, and is not specifically limited here; the input and output interface is used to obtain external input data or output data to the outside world, and its specific interface type can be selected according to specific application needs and is not specifically limited here.

[0151] In addition, the memory as a carrier for resource storage can be a read-only memory, random access memory, disk or CD, etc. The resources stored thereon include operating system, computer programs and data, etc. The storage method can be temporary storage or permanent storage.

[0152] The operating system is used to manage and control the hardware devices and computer programs on the server to realize the operation and processing of the data in the memory by the processor, and it can be Windows Server, Netware, Unix, Linux, etc. In addition to the computer program that can be used to complete the basic input and output system update method disclosed in any of the above embodiments, the computer program can further include computer programs that can be used to complete other specific tasks. In addition to data such as application update information, the data can also include data such as application developer information.

[0153] Figure 6 A schematic diagram of the structure of a terminal provided in an embodiment of the present application, the terminal may specifically include but is not limited to a smart phone, a tablet computer, a laptop computer or a desktop computer, etc.

[0154] Generally, the terminal in this embodiment includes: a processor and a memory.

[0155] Among them, the processor may include one or more processing cores, such as a 4-core processor, an 8-core processor, etc. The processor may be implemented in at least one hardware form of DSP (Digital Signal Processing), FPGA (Field-Programmable Gate Array), and PLA (Programmable Logic Array). The processor may also include a main processor and a coprocessor. The main processor is a processor for processing data in the awake state, also known as a CPU (Central Processing Unit); the coprocessor is a low-power processor for processing data in the standby state. In some embodiments, the processor may be integrated with a GPU (Graphics Processing Unit), which is responsible for rendering and drawing the content to be displayed on the display screen. In some embodiments, the processor may also include an AI (Artificial Intelligence) processor, which is used to process computing operations related to machine learning.

[0156] The memory may include one or more computer non-volatile storage media, which may be non-transitory. The memory may also include high-speed random access memory, and non-volatile memory, such as one or more disk storage devices, flash memory storage devices. In this embodiment, the memory is at least used to store the following computer program, wherein, after the computer program is loaded and executed by the processor, it can implement the relevant steps in the basic input and output system update method performed by the terminal side disclosed in any of the aforementioned embodiments. In addition, the resources stored in the memory may also include an operating system and data, etc., and the storage method may be temporary storage or permanent storage. Among them, the operating system may include Windows, Unix, Linux, etc. The data may include, but is not limited to, update information of the application.

[0157] In some embodiments, the terminal may also include a display screen, an input and output interface, a communication interface, a sensor, a power supply, and a communication bus.

[0158] Those skilled in the art will understand that Figure 6 The structure shown in the figure does not constitute a limitation on the terminal, and may include more or fewer components than those shown in the figure.

[0159] A non-volatile storage medium provided in an embodiment of the present application is introduced below. The non-volatile storage medium described below can be cross-referenced with other embodiments described herein.

[0160] A non-volatile storage medium for storing a computer program, wherein the computer program, when executed by a processor, implements the basic input / output system update method disclosed in the above-mentioned embodiment. The non-volatile storage medium is a computer-readable non-volatile storage medium, which, as a carrier for storing resources, may be a read-only memory, a random access memory, a disk or an optical disk, etc. The resources stored thereon include an operating system, a computer program and data, etc., and the storage method may be temporary storage or permanent storage.

[0161] In this embodiment, the computer program executed by the processor can specifically implement the following steps: obtain a preset boot image and a basic input / output system option value; read a binary file of the basic input / output system in the server; translate the binary file into a target format file, and replace the boot image in the target format file with the preset boot image, assign the basic input / output system option value to the corresponding option in the target format file to obtain a new file; after flashing the basic input / output system in the server with the new file, verify the current boot image and the current basic input / output system option value of the server.

[0162] In this embodiment, the computer program executed by the processor can specifically implement the following steps: in response to a submission instruction of a preset boot image and basic input / output system option value, extract the preset boot image and basic input / output system option value from the submission instruction.

[0163] In this embodiment, the computer program executed by the processor may specifically implement the following steps: calling a preset reading tool to read a binary file of a basic input and output system in a server.

[0164] In this embodiment, the computer program executed by the processor can specifically implement the following steps: determine that the target format is the Unicode encoding format; translate the binary file into a Unicode encoding format file; call a preset reading tool to determine the boot image position and the assignment position in the Unicode encoding format file; replace the boot image in the target format file with the preset boot image at the boot image position; assign the basic input and output system option value to the corresponding option in the target format file at the assignment position.

[0165] In this embodiment, the computer program executed by the processor can specifically implement the following steps: calling a preset reading tool to match the boot image position character information and the assignment position character information in the UNICODE encoding format file to determine the boot image position and the assignment position.

[0166] In this embodiment, the computer program executed by the processor can specifically implement the following steps: after restarting the server, obtain the current boot image and the current basic input and output system option value; calculate the image checksum of the current boot image and the value checksum of the current basic input and output system option value; compare the image checksum with the checksum of the preset boot image; if the image checksum is consistent with the checksum of the preset boot image, it is determined that the current boot image of the server has passed the verification; otherwise, it is determined that the current boot image of the server has failed the verification; compare the value checksum with the checksum of the basic input and output system option value; if the value checksum is consistent with the checksum of the basic input and output system option value, it is determined that the current basic input and output system option value of the server has passed the verification; otherwise, it is determined that the current basic input and output system option value of the server has failed the verification.

[0167] In this embodiment, the computer program executed by the processor can specifically implement the following steps: determining the option value modified this time; and calculating the value checksum of the option value modified this time.

[0168] A computer program product provided in an embodiment of the present application is introduced below. The computer program product described below can be cross-referenced with other embodiments described in this document.

[0169] A computer program product comprises a computer program / instruction, wherein when the computer program / instruction is executed by a processor, the steps of the basic input and output system updating method disclosed above are implemented.

[0170] The various embodiments in this specification 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 referenced to each other.

[0171] The steps of the method or algorithm 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 a random access memory (RAM), a memory, a read-only memory (ROM), an electrically programmable ROM, an electrically erasable programmable ROM, a register, a hard disk, a removable disk, a CD-ROM, or any other form of non-volatile storage medium known in the art.

[0172] Specific examples are used herein to illustrate the principles and implementation methods of the present application. The description of the above embodiments is only used to help understand the method of the present application and its core idea. At the same time, for those skilled in the art, according to the idea of ​​the present application, there will be changes in the specific implementation methods and application scope. In summary, the content of this specification should not be understood as a limitation on the present application.

Claims

1. A basic input and output system updating method, characterized in that: include: Get the default boot image and basic input and output system option values; Read the binary file of the basic input and output system in the server; Translating the binary file into a target format file, replacing the boot image in the target format file with the preset boot image, and assigning the basic input and output system option value to the corresponding option in the target format file to obtain a new file; After the basic input and output system in the server is flashed with the new file, the current boot image and the current basic input and output system option value of the server are verified.

2. The method according to claim 1, characterized in that: Get the default boot image and BIOS option values, including: In response to a submission instruction of the preset boot image and the basic input / output system option value, the preset boot image and the basic input / output system option value are extracted from the submission instruction.

3. The method according to claim 1, characterized in that Read the binary files of the basic input and output system in the server, including: A preset reading tool is called to read a binary file of a basic input and output system in the server.

4. The method according to claim 1, characterized in that The binary file is translated into a target format file, and a boot image in the target format file is replaced with the preset boot image, and the basic input and output system option value is assigned to a corresponding option in the target format file, including: Make sure the target format is Unicode encoding format; Translate the binary file into a Unicode encoding format file; Calling a preset reading tool to determine the boot image position and the assignment position in the Unicode encoding format file; Replacing the boot image in the target format file with the preset boot image at the boot image position; The basic input and output system option value is assigned to the corresponding option in the target format file at the assignment position.

5. The method according to claim 4, characterized in that Calling the preset reading tool to determine the boot image position and the assignment position in the UNICODE encoding format file includes: The preset reading tool is called to match the boot image position character information and the assignment position character information in the UNICODE encoding format file to determine the boot image position and the assignment position.

6. The method according to any one of claims 1 to 5, characterized in that: Verifying the current boot image and the current basic input and output system option value of the server includes: After restarting the server, obtaining the current boot image and the current basic input and output system option value; Calculating an image checksum of the current boot image and a value checksum of the current basic input and output system option value; Comparing the image checksum with the checksum of the preset boot image; If the image checksum is consistent with the checksum of the preset startup image, it is determined that the current startup image of the server has passed the check; otherwise, it is determined that the current startup image of the server has failed the check; comparing the value checksum with the checksum of the BIOS option value; If the value checksum is consistent with the checksum of the basic input and output system option value, it is determined that the current basic input and output system option value of the server has passed the check; otherwise, it is determined that the current basic input and output system option value of the server has failed the check.

7. The method according to claim 6, characterized in that Calculating a value checksum of the current basic input / output system option value includes: Determine the option value for this modification; Calculate the checksum of the option value that is modified this time.

8. A basic input and output system updating device, characterized in that: include: An acquisition module, used to obtain a preset boot image and basic input and output system option values; A reading module, used for reading binary files of a basic input and output system in a server; a modification module, configured to translate the binary file into a target format file, replace the boot image in the target format file with the preset boot image, and assign the basic input and output system option value to the corresponding option in the target format file to obtain a new file; The update module is used to verify the current boot image and the current basic input output system option value of the server after the basic input output system in the server is flashed with the new file.

9. An electronic device, characterized in that: include: Memory for storing computer programs; A processor, configured to execute the computer program to implement the method according to any one of claims 1 to 7.

10. A non-volatile storage medium, characterized in that: Used to store a computer program, wherein when the computer program is executed by a processor, the method according to any one of claims 1 to 7 is implemented.

Citation Information

Patent Citations

  • Method for modifying computer system boot-strap picture

    CN101105754A

  • Code-modification-free control system and method for automatically customizing BIOS file

    CN116243990A

  • BIOS (Basic Input / Output System) logo modification method and device, equipment and medium

    CN118708248A