Option configuration method for basic input / output system, and product, device and medium

By comparing the cyclic redundancy check values ​​of the basic input/output system to filter out updated configuration options, and reconfiguring the linkage options according to user instructions during the initialization phase, the problem of needing to redevelop existing technologies when application scenarios change is solved, thus reducing configuration costs.

WO2026123611A1PCT designated stage Publication Date: 2026-06-18INSPUR SUZHOU INTELLIGENT TECH CO LTD

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
INSPUR SUZHOU INTELLIGENT TECH CO LTD
Filing Date
2025-05-30
Publication Date
2026-06-18

AI Technical Summary

Technical Problem

The option configuration of the existing basic input/output system needs to be redeveloped to adapt to changes in user application scenarios, resulting in high costs.

Method used

By comparing the current cyclic redundancy check value of various configuration options of the basic input/output system with the cyclic redundancy check value in the previous startup process, the updated configuration options are selected, and user commands are obtained through the preset display interface and interface to reconfigure the linkage configuration options during the initialization phase.

🎯Benefits of technology

It reduces the cost of configuring basic input/output system options, enables adaptation without redevelopment when application scenarios change, and features simple code logic and low maintenance costs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2025098528_18062026_PF_FP_ABST
    Figure CN2025098528_18062026_PF_FP_ABST
Patent Text Reader

Abstract

The present application relates to the technical field of computers. Disclosed are an option configuration method for a basic input / output system, and a product, a device and a medium. The method comprises: determining current cyclic redundancy check values of various configuration options of a basic input / output system during a current boot process, and on the basis of a result of comparison between cyclic redundancy check values during a previous boot process and the current cyclic redundancy check values, screening the configuration options to obtain updated configuration options; determining linkage configuration options from among the updated configuration options, and determining, from among the configuration options, linked configuration options related to the linkage configuration options; and sending the linkage configuration options and the related linked configuration options to a preset display interface for display, and on the basis of a target instruction returned by a preset interface in the preset display interface, reconfiguring the linked configuration options, so as to continue executing the current boot process of the basic input / output system. The solution reduces the cost required for a basic input / output system to complete option configuration.
Need to check novelty before this filing date? Find Prior Art

Description

Basic Input / Output System Options Configuration Methods, Products, Equipment, and Media

[0001] Cross-references to related applications

[0002] This application claims priority to Chinese Patent Application No. 202411826214.4, filed on December 12, 2024, entitled “Option Configuration Method, Product, Device and Medium for Basic Input / Output System”, the entire contents of which are incorporated herein by reference. Technical Field

[0003] This application relates to the field of computer technology, and in particular to optional configuration methods, products, devices and media for basic input / output systems. Background Technology

[0004] A server is a type of computer that runs faster, handles higher loads, and is more expensive than a regular computer. Servers provide computing or application services to other client machines on a network. With the rapid development of servers, the requirements for all aspects of servers are becoming increasingly demanding. The BIOS (Basic Input / Output System) configuration options include, but are not limited to, boot order, security settings, date and time settings, processor speed adjustment, and hard drive partitioning. These configuration options allow users to fine-tune and adjust the computer's hardware configuration and boot process.

[0005] The option configuration of a basic input / output system has diverse application scenarios, each with its own logic. Implementing a solution requires adding an implementation plan for each scenario, resulting in high code development and maintenance costs. Furthermore, combinations of linked option names added by the user within a given application scenario are only applicable to that scenario. When the user's application scenario changes, the system becomes unsuitable, requiring redevelopment to adapt to the changed scenario, further increasing costs.

[0006] It is evident that reducing the cost required for a basic input / output system to complete option configuration is a problem that needs to be solved by those skilled in the art. Summary of the Invention

[0007] The purpose of this application is to provide a method, apparatus, device, and medium for configuring options in a basic input / output system, thereby reducing the cost required to complete option configuration in a basic input / output system. The specific solution is as follows:

[0008] In a first aspect, this application discloses an option configuration method for a basic input / output system, including:

[0009] Determine the current cyclic redundancy check (CR) value of each configuration option of the basic input / output system during the current startup process, and filter out each updated configuration option from the configuration options based on the comparison result between the CR value of the previous startup process and the current CR value.

[0010] Determine the linked configuration options from the updated configuration options, and determine the linked configuration options related to the linked configuration options from the configuration options;

[0011] During the initialization phase of the basic input / output system, the linkage configuration options and related linked configuration options are sent to the preset display interface for display. Based on the target instructions returned by the preset interface in the preset display interface, the linked configuration options are reconfigured to continue the current startup process of the basic input / output system.

[0012] In some embodiments of this application, determining the current cyclic redundancy check value of various configuration options of the basic input / output system during the current startup process includes:

[0013] The configuration options of the basic input / output system are sequentially assigned to the current option category;

[0014] Perform cyclic redundancy check on the variables of each configuration option in the current option category to obtain the current cyclic redundancy check value for the current option category;

[0015] The current cyclic redundancy check value for each option category is stored in the preset storage area of ​​the basic input / output system.

[0016] In some embodiments of this application, cyclic redundancy check (CRUD) is performed on the variables of each configuration option in the current option category to obtain the current CRUD value for the current option category, including:

[0017] The variable values ​​of each configuration option under the current option category are concatenated to obtain the concatenated string;

[0018] Perform cyclic redundancy check on the concatenated string to obtain the current cyclic redundancy check value for the current option category.

[0019] In some embodiments of this application, the option categories for the configuration options of the basic input / output system are determined, including:

[0020] The configuration options are categorized according to their variable names and globally unique identifiers in the basic input / output system to obtain configuration options of different categories.

[0021] Accordingly, based on the comparison between the cyclic redundancy check value from the previous startup process and the current cyclic redundancy check value, the updated configuration options are selected from the configuration options, including:

[0022] Compare the current cyclic redundancy check value of the current option category with the previous cyclic redundancy check value to obtain the comparison result; the previous cyclic redundancy check value is the cyclic redundancy check value of the current option category in the previous startup process.

[0023] If the comparison result indicates that the current cyclic redundancy check value is inconsistent with the previous cyclic redundancy check value, then each configuration option in the current option category is determined to be an updated configuration option.

[0024] In some embodiments of this application, before comparing the current cyclic redundancy check value of the current option category with the previous cyclic redundancy check value, the method further includes:

[0025] Read the variable names and globally unique identifiers of each configuration option, as well as the redundancy check value from the previous cycle, from the preset storage area;

[0026] The previous cycle redundancy check value for the current option category is determined from the previous cycle redundancy check values ​​based on the variable name and the variable's globally unique identifier.

[0027] In some embodiments of this application, the updated configuration options are the configuration options updated after the previous startup process is completed in the target application scenario. The target application scenario is any one of the following: system setting application scenario, out-of-band scenario, and in-band scenario.

[0028] In some embodiments of this application, after filtering out each updated configuration option from the configuration options based on the comparison result of the cyclic redundancy check value in the previous startup process and the current cyclic redundancy check value, the method further includes:

[0029] Detect the configuration information before the update and the current configuration information for each updated configuration option;

[0030] System diagnostic logs are generated based on the configuration information before the update and the current configuration information, so that the basic input / output system can be maintained using the system diagnostic logs.

[0031] In some embodiments of this application, a linkage configuration option is determined from each updated configuration option, and a linked configuration option related to the linkage configuration option is determined from the configuration options, including:

[0032] If the currently updated configuration option is in the list of linkage options of the basic input / output system, then the currently updated configuration option is determined to be a linkage configuration option;

[0033] Based on the list of linked options of the currently updated configuration options, determine the linked configuration options that are related to the currently updated configuration options from each configuration option.

[0034] In some embodiments of this application, a list of linkage options is constructed, including:

[0035] Determine the target parameters for each configuration option; these target parameters include server type parameters and storage type parameters.

[0036] A list of linkage options is constructed based on configuration options that meet preset conditions according to the target parameters.

[0037] In some embodiments of this application, the linked configuration options are reconfigured according to the target instructions returned by the preset interface in the preset display interface, including:

[0038] Retrieve the target instruction returned by the preset interface in the preset display interface;

[0039] If the target instruction is of the option removal type, then the first target option corresponding to the target instruction is selected from the linked configuration options, and the first target option is removed from the linked option list;

[0040] If the target instruction is of the option addition type, then the second target option corresponding to the target instruction is selected from each configuration option and added to the list of linked options;

[0041] If the target instruction is of the option modification type, then the third target option corresponding to the target instruction is selected from the linked configuration options, and the configuration of the third target option is modified.

[0042] In some embodiments of this application, after sending the linkage configuration options and related linked configuration options to a preset display interface for display, the method further includes:

[0043] If the preset reconfiguration termination conditions are met, the current startup process of the basic input / output system will continue.

[0044] The preset reconfiguration termination condition is that the display time of the preset interface exceeds a preset threshold or the target instruction representation ends, and the linked configuration option is reconfigured.

[0045] In some embodiments of this application, the current startup process of the basic input / output system continues to be executed, including:

[0046] During the driver execution environment phase of the Basic Input / Output System (PIOS), the PIOS is controlled to load and run various drivers; these drivers include drivers for hardware devices and extension programs for the PIOS.

[0047] During the boot device selection phase of the Elementary Input / Output System (Elementary Input / Output System), the Elementary Input / Output System is controlled to start the boot device according to the current configuration in the configuration options.

[0048] Secondly, this application discloses a computer program product, including a computer program / instruction that, when executed by a processor, implements the steps of the aforementioned disclosed basic input / output system option configuration method.

[0049] Thirdly, this application discloses an electronic device, including:

[0050] Memory, used to store computer programs;

[0051] A processor for executing computer programs to implement the steps of the aforementioned disclosed basic input / output system's optional configuration method.

[0052] Fourthly, this application discloses a non-volatile computer storage medium for storing a computer program; wherein, when the computer program is executed by a processor, it implements the steps of the aforementioned disclosed basic input / output system option configuration method.

[0053] Therefore, this application determines the current cyclic redundancy check (CRC) value of various configuration options of the basic input / output system during the current startup process, and filters out each updated configuration option from the configuration options based on the comparison result between the CRC value of the previous startup process and the current CRC value; determines the linkage configuration option from each updated configuration option, and determines the linked configuration option related to the linkage configuration option from the configuration options; sends the linkage configuration option and the related linked configuration option to the preset display interface for display, and reconfigures the linked configuration option according to the target instruction returned by the preset interface in the preset display interface, so as to continue the current startup process of the basic input / output system.

[0054] The beneficial effects are as follows: First, this application determines the updated configuration options by comparing the current cyclic redundancy check (CRC) value of various configuration options in the basic input / output system during the current startup process with the CRC value in the previous startup process. Since CRC has advantages such as strong data integrity verification and error detection capabilities, and does not require consideration of the application scenario for updating configuration options, reliable updated configuration options can be determined. The code logic is simple, and the code development and maintenance costs are low. Furthermore, during the initialization phase of the basic input / output system, the linked configuration options and related linked configuration options can be sent to a preset display interface for display. During this phase, the target command issued by the user can be obtained through a preset interface, and the linked configuration options can be reconfigured according to the target command. In other words, users can reconfigure the linked configuration options according to the current application scenario without needing to redevelop them to adapt to the changed application scenario, reducing the cost required for the basic input / output system to complete option configuration. Attached Figure Description

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

[0056] Figure 1 is a flowchart of an option configuration method for a basic input / output system provided in an embodiment of this application;

[0057] Figure 2 is a schematic diagram of the initial determination of a specific cyclic redundancy check value provided in an embodiment of this application;

[0058] Figure 3 is a schematic diagram of the option configuration of a specific basic input / output system provided in an embodiment of this application;

[0059] Figure 4 is a flowchart of a specific basic input / output system option configuration method provided in an embodiment of this application;

[0060] Figure 5 is a schematic diagram of the optional configuration device structure of a basic input / output system provided in an embodiment of this application;

[0061] Figure 6 is a structural diagram of an electronic device provided in an embodiment of this application. Detailed Implementation

[0062] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the protection scope of this application.

[0063] A server is a type of computer that runs faster, handles higher loads, and is more expensive than a regular computer. Servers provide computing or application services to other client machines on a network. With the rapid development of servers, the requirements for all aspects of servers are becoming increasingly demanding. BIOS configuration options include, but are not limited to, boot order, security settings, date and time settings, processor speed adjustment, and hard drive partitioning. These configuration options allow users to fine-tune and adjust the computer's hardware configuration and boot process.

[0064] The option configuration of a basic input / output system has diverse application scenarios, each with its own logic. Implementing a solution requires adding an implementation plan for each scenario, resulting in high code development and maintenance costs. Furthermore, combinations of linked option names added by the user within a given application scenario are only applicable to that scenario. When the user's application scenario changes, the system becomes unsuitable, requiring redevelopment to adapt to the changed scenario, further increasing costs.

[0065] The terms "comprising" and "having," and any variations thereof, in the specification and accompanying drawings of this application are intended to cover non-exclusive inclusion. For example, a process, method, system, product, or apparatus that includes a series of steps or units is not limited to the steps or units listed, but may include steps or units not listed.

[0066] To enable those skilled in the art to better understand the present application, the present application will be further described in detail below with reference to the accompanying drawings and specific embodiments.

[0067] Next, a detailed description of an option configuration scheme for a basic input / output system provided in this application embodiment will be provided. Figure 1 illustrates an option configuration method for a basic input / output system provided in this application embodiment, including:

[0068] Step S11: Determine the current cyclic redundancy check value of each configuration option of the basic input / output system in the current startup process, and filter out each updated configuration option from the configuration options based on the comparison result between the cyclic redundancy check value in the previous startup process and the current cyclic redundancy check value.

[0069] In some embodiments of this application, determining the current cyclic redundancy check (CRC) value of various configuration options of the basic input / output system during the current startup process includes: sequentially determining each option category of the basic input / output system's configuration options as the current option category; performing CRC check on the variables of each configuration option in the current option category to obtain the current CRC check value of the current option category; and storing the current CRC check value of each option category in a preset storage area of ​​the basic input / output system.

[0070] During startup, the Basic Input / Output System (BIOS) reads user-modified settings according to variable names and globally unique identifiers (GUIDs). It then calculates the CRC value of each setting based on its GUID classification, using this CRC value as the current Cyclic Redundancy Check (CRC) value. This involves sequentially identifying each option category of the BIOS's configuration options as the current option category, performing CRC checks on the variables of each configuration option within that category, and obtaining the current CRC value for that category. This process yields the current CRC value for each option category, which is then stored in the BIOS's preset storage area. This preset storage area can specifically be a Non-Volatile Random Access Memory (NRAN). Memory (NVRAM) can retain stored data even after power is off. Compared with traditional volatile memory, NVRAM does not require a continuous power supply to maintain data storage. Like RAM, NVRAM supports random access, can quickly read and write data at any location, has a fast read and write speed, and usually has low power consumption when reading data.

[0071] In some embodiments of this application, cyclic redundancy check (CRUD) is performed on the variables of each configuration option in the current option category to obtain the current CRUD value for the current option category. This includes: concatenating the variable values ​​of each configuration option under the current option category to obtain a concatenated string; and performing CRUD on the concatenated string to obtain the current CRUD value for the current option category. For the currently processed option category, the variable values ​​of all configuration options under it are first extracted one by one, and these variable values ​​are concatenated according to a certain order or rule to form a complete string containing all variable values. Subsequently, the CRUD algorithm is used to verify this concatenated string. Through this process, a current CRUD value corresponding to the option category can be obtained. By calculating the CRUD value, a large number of options can be transformed into a smaller data representation, thereby saving storage space. Furthermore, the fast calculation characteristic of the CRUD value improves retrieval efficiency.

[0072] In some embodiments of this application, determining the option categories of the configuration options of the Basic Input / Output System (PIOS) includes classifying the configuration options according to their variable names and globally unique identifiers (GUIDs) to obtain configuration options of different categories. The uniqueness of the variable names and GUIDs ensures that each configuration option can be uniquely identified, thereby avoiding confusion and errors in subsequent processing.

[0073] In some embodiments of this application, updated configuration options are selected from the configuration options based on the comparison result between the cyclic redundancy check (CRUD) value from the previous startup process and the current CRUD value. This includes: comparing the current CRUD value of the current option category with the previous CRUD value to obtain a comparison result; the previous CRUD value is the CRUD value of the current option category in the previous startup process; if the comparison result indicates that the current CRUD value is inconsistent with the previous CRUD value, then each configuration option of the current option category is determined to be an updated configuration option. The current CRUD value of the current option category is compared with the CRUD value of the same option category recorded in the previous startup process, i.e., comparing the current CRUD value of the current option category with the previous CRUD value, to obtain a comparison result; if the comparison result indicates that the current CRUD value is different from the previously recorded CRUD value, then all configuration options under the current option category are determined to have been updated, that is, each configuration option of the current option category is determined to be an updated configuration option.

[0074] In some embodiments of this application, before comparing the current cyclic redundancy check (CRC) value of the current option category with the previous CRC value, the method further includes: reading the variable name, globally unique identifier (GUID), and previous CRC value of each configuration option from a preset storage area; and determining the previous CRC value of the current option category from each previous CRC value based on the variable name and GUID. When determining the current CRC value of the current option category, the previous CRC value of the current option category must also be determined, i.e., obtaining the variable name, GUID, and previous CRC value of each configuration option from the preset storage area; then, using the variable name and GUID, finding the previous CRC value corresponding to the current option category from this series of previous CRC values.

[0075] For example, Figure 2 shows a specific schematic diagram of the initial determination of the cyclic redundancy check value. It can be understood that when initially determining the option categories of the configuration options of the basic input / output system, firstly, when the basic input / output system starts up, the configuration options are classified according to the variable name and globally unique identifier of each configuration option of the basic input / output system to obtain configuration options of different option categories. The set value of each type of configuration option is read and the corresponding initial cyclic redundancy check value is calculated. Then, the cyclic redundancy check value of each type of configuration option is saved to the preset storage area. Finally, the selected configuration options are updated when starting up to the target application scenario.

[0076] In some embodiments of this application, the updated configuration options are those updated after the previous startup process has been completed in the target application scenario. The target application scenario can be any one of the following: system setup application scenario, out-of-band scenario, or in-band scenario. For example, Figure 3 shows a specific schematic diagram of the option configuration of a basic input / output system. After the last startup, the user can select a target application scenario from system setup application scenario (i.e., BIOS Setup), out-of-band scenario (e.g., SCE), and in-band scenario (e.g., Postman), and then update a certain configuration option in that target application scenario to obtain the updated configuration options. However, it should be noted that although the updated configuration options are obtained here, the specific updated configuration options will be determined on the next startup based on the comparison between the previous cyclic redundancy check value and the current cyclic redundancy check value.

[0077] In some embodiments of this application, after filtering out each updated configuration option from the configuration options based on the comparison result of the cyclic redundancy check value in the previous startup process and the current cyclic redundancy check value, the method further includes: detecting the configuration information before the update and the current configuration information of each updated configuration option; generating a system diagnostic log based on the configuration information before the update and the current configuration information, so as to use the system diagnostic log to maintain the basic input / output system. Recording the configuration information before the update and the current configuration information in the system diagnostic log, and using the system diagnostic log to maintain the basic input / output system, provides very useful information for handling problems with user machines during maintenance, greatly improving maintenance efficiency.

[0078] Step S12: Determine the linkage configuration option from each updated configuration option, and determine the linked configuration option related to the linkage configuration option from the configuration options.

[0079] If the currently updated configuration option is in the list of linked options in the Basic Input / Output System (BIOS), then the option is a linked configuration option. In BIOS settings, a linked configuration option refers to a mechanism that when a configuration option is modified, other related configuration options will be automatically modified accordingly. The linked configuration options are the other configuration options associated with the linked configuration option. Specifically, a list of linked options can be set to find the linked configuration options associated with the linked configuration option.

[0080] Step S13: During the initialization phase of the basic input / output system, the linkage configuration options and related linked configuration options are sent to the preset display interface for display. The linked configuration options are reconfigured according to the target instructions returned by the preset interface in the preset display interface, so as to continue the current startup process of the basic input / output system.

[0081] During the initialization phase of the basic input / output system, the linked configuration options and related linked configuration options are sent to the preset display interface for display. Users can intuitively understand the specific information of the linked configuration options and related linked configuration options on the preset display interface. Based on this specific information and the current application scenario, users can issue target commands that need to be reconfigured through preset interfaces on the preset display interface. The system can reconfigure the linked configuration options according to the returned target commands. After reconfiguration, the current startup process of the basic input / output system can continue. As shown in Figure 3, the preset display interface provides at least three functions: removing linked options, adding new linked options, and modifying the default values ​​of currently linked options.

[0082] In some embodiments of this application, after sending the linkage configuration options and related linked configuration options to a preset display interface for display, the method further includes: if the current preset reconfiguration end condition is met, then the current startup process of the basic input / output system continues to be executed; wherein, the preset reconfiguration end condition is that the display time of the preset interface exceeds a preset threshold or the target instruction characterization ends the reconfiguration of the linked configuration options.

[0083] For example, as shown in Figure 3, when the linked configuration options and related linked configuration options are sent to the preset display interface for display, a countdown for the preset interface can also be displayed on the preset display interface. It can be understood that when the countdown ends, it indicates that the display time of the preset interface has exceeded a preset threshold. For example, if the preset threshold is 5 seconds, the countdown starts at 5 seconds and continues until the countdown reaches 0. At this point, it is determined that the display time of the preset interface has exceeded the preset threshold; the countdown begins again, and it checks whether the user has interacted with the interface, that is, whether the preset interface has returned a target instruction. If no target instruction is received when the countdown ends, the preset reconfiguration end condition is met, and therefore, the process directly jumps to continue the current startup process of the basic input / output system. Furthermore, if the returned target instruction indicates the end of the reconfiguration of the linked configuration options, it means that the preset reconfiguration end condition is also met, and the process directly jumps to continue the current startup process of the basic input / output system.

[0084] In some embodiments of this application, the current startup process of the basic input / output system continues to be executed, including: in the driver execution environment stage of the basic input / output system, controlling the basic input / output system to load and run various drivers; wherein, each driver includes drivers for hardware devices and extensions for the basic input / output system; in the boot device selection stage of the basic input / output system, controlling the basic input / output system to start the boot device according to the current configuration in the configuration options. The complete boot process of a Basic Input / Output System (BIOS) includes a Security Phase (SEC), a Pre-EFI Initialization Phase (PEI), a Driver Execution Environment (DXE), and a Boot Device Selection (BDS). Option updates and selection of linked options can be performed during the Security Phase or the Initialization Phase. Option reconfiguration occurs during the Initialization Phase, specifically the reconfiguration of linked configuration options based on target instructions returned from preset interfaces in the preset display screen. Then, the BIOS proceeds to the Driver Execution Environment and Boot Device Selection phases. Specifically, during the Driver Execution Environment phase, the BIOS loads and runs various drivers, including hardware device drivers and BIOS extensions. During the Boot Device Selection phase, the BIOS starts the boot device according to the current configuration in the options. It should be noted that some embodiments of this application are completed in the initialization phase. Compared with the traditional technology in the device selection phase, this allows the user to send target commands through a preset interface to reconfigure the linked configuration options based on the linkage configuration options and related linked configuration options displayed on the preset display interface.

[0085] Therefore, this application determines the current cyclic redundancy check (CRC) value of various configuration options of the basic input / output system during the current startup process, and filters out each updated configuration option from the configuration options based on the comparison result between the CRC value of the previous startup process and the current CRC value; determines the linkage configuration option from each updated configuration option, and determines the linked configuration option related to the linkage configuration option from the configuration options; sends the linkage configuration option and the related linked configuration option to the preset display interface for display, and reconfigures the linked configuration option according to the target instruction returned by the preset interface in the preset display interface, so as to continue the current startup process of the basic input / output system.

[0086] The beneficial effects are as follows: First, this application determines the updated configuration options by comparing the current cyclic redundancy check (CRC) value of various configuration options in the basic input / output system during the current startup process with the CRC value in the previous startup process. Since CRC has advantages such as strong data integrity verification and error detection capabilities, and does not require consideration of the application scenario for updating configuration options, reliable updated configuration options can be determined. The code logic is simple, and the code development and maintenance costs are low. Furthermore, during the initialization phase of the basic input / output system, the linked configuration options and related linked configuration options can be sent to a preset display interface for display. During this phase, the target command issued by the user can be obtained through a preset interface, and the linked configuration options can be reconfigured according to the target command. In other words, users can reconfigure the linked configuration options according to the current application scenario without needing to redevelop them to adapt to the changed application scenario, reducing the cost required for the basic input / output system to complete option configuration.

[0087] Referring to Figure 4, this application discloses a specific method for configuring options in a basic input / output system. Compared to the previous embodiment, some embodiments of this application further illustrate and optimize the technical solution. These include:

[0088] Step S21: Determine the current cyclic redundancy check value of each configuration option of the basic input / output system in the current startup process, and filter out each updated configuration option from the configuration options based on the comparison result between the cyclic redundancy check value in the previous startup process and the current cyclic redundancy check value.

[0089] The configuration options of a Basic Input / Output System (BIOS) include, but are not limited to, boot order, security settings, date and time settings, processor speed adjustment, and hard disk partitioning. These options allow users to fine-tune and adjust the computer's hardware configuration and boot process. Specifically: Boot order: In BIOS, users can set the computer's boot order, choosing to boot from the hard drive, optical drive, or Universal Serial Bus (USB) device, which is very useful for installing operating systems or performing system maintenance; Security settings: Includes options such as password protection, ensuring that only authorized users can access the computer; Date and time: Sets the computer's date and time, which is crucial for applications requiring precise time (such as online meetings); Processor speed: Users can adjust the processor speed as needed to optimize performance; Hard disk partitioning: In BIOS, users can partition the hard drive, creating new partitions or resizing existing ones.

[0090] During the current startup process, the Basic Input / Output System (BIOS) reads the user-modified settings according to their variable names and GUIDs. It then calculates the cyclic redundancy check (CRUD) value for each setting based on the BIOS's non-volatile regions, using this as the current CRUD value. Simultaneously, it reads the variable names and GUIDs from the previous startup's non-volatile regions, along with the CRUD value for that category, using this as the previous startup's CRUD value. The BIOS then matches the variable names and GUIDs from the previous startup with those from the current startup. If they match, the BIOS belongs to the same category, and the CRUD values ​​from the previous startup and the current startup are compared for the same category. If a discrepancy in the CRUD values ​​is detected, the option in that category has been modified by the user, meaning the configuration option has been updated.

[0091] Furthermore, appropriate Cyclic Redundancy Check (CRC) generation algorithms can be selected under different verification accuracy requirements. For example, for the first verification level, an 8-bit CRC algorithm can be used to generate the CRC value, which involves XORing the data to be verified with a predefined polynomial to obtain the CRC value. For the second verification level, a 16-bit CRC algorithm can be used to generate the CRC value. This involves shifting the number of binary sequences to be sent left by 16 bits (i.e., multiplying by a certain factor), then dividing by a polynomial, and the remainder is the CRC value. The second verification level has higher accuracy requirements than the first verification level. For the third parity level, a 32-bit Cyclic Redundancy Check (CRBC) algorithm can be selected to generate the CRBC value. This involves initializing a 32-bit register to its default values, inputting the data to be checked into the register byte by byte or word, and performing shift, XOR, and polynomial division operations to generate the CRBC value. The third parity level has higher accuracy requirements than the second parity level. Understandably, in scenarios with lower accuracy requirements, it is not necessary to choose a generation algorithm with a longer parity bit length to reduce redundant data. However, when higher accuracy is required, a generation algorithm with a longer parity bit length is needed to ensure accurate identification of updated configuration options.

[0092] Step S22: If the currently updated configuration option is in the list of linked options of the basic input / output system, then the currently updated configuration option is determined to be a linked configuration option; based on the list of linked options of the currently updated configuration option, determine the linked configuration option related to the currently updated configuration option from each configuration option.

[0093] Understandably, if the list of linked options for the Basic Input / Output System contains the currently updated configuration option, it means that the currently updated configuration option is a linked configuration option; if the list of linked options for the Basic Input / Output System does not contain the currently updated configuration option, it means that the currently updated configuration option is not a linked configuration option. Furthermore, since the list of linked options records the linked configuration options related to the currently updated configuration option, the linked configuration options related to the currently updated configuration option are determined from each configuration option based on the list of linked options for the currently updated configuration option.

[0094] In some embodiments of this application, constructing a list of linkage options includes: determining the target parameters for each configuration option; wherein the target parameters include server type parameters and storage type parameters; and constructing a list of linkage options based on configuration options whose target parameters meet preset conditions. The target parameters for each configuration option are clearly defined; these target parameters cover both server type parameters and storage type parameters; then, a list of linkage options is established based on those configuration options whose target parameters meet predetermined conditions. Specifically, server type parameters can be a series of detailed parameters describing the server's hardware and software configuration. These parameters collectively determine the server's performance and functionality. Server type parameters may include architecture type, number of cores, cache capacity, etc. Storage type parameters mainly focus on the storage devices used by the server to store data and programs and their related performance. Storage type parameters may specifically include hard disk type, storage capacity, read / write speed, etc.

[0095] Step S23: During the initialization phase of the basic input / output system, the linkage configuration options and related linked configuration options are sent to the preset display interface for display. The linked configuration options are reconfigured according to the target instructions returned by the preset interface in the preset display interface, so as to continue the current startup process of the basic input / output system.

[0096] In some embodiments of this application, reconfiguring the linked configuration options according to the target instruction returned by the preset interface in the preset display interface includes: obtaining the target instruction returned by the preset interface in the preset display interface; if the target instruction is of the option removal type, then filtering out the first target option corresponding to the target instruction from the linked configuration options and removing the first target option from the linked option list; if the target instruction is of the option addition type, then filtering out the second target option corresponding to the target instruction from each configuration option and adding the second target option to the linked option list; if the target instruction is of the option modification type, then filtering out the third target option corresponding to the target instruction from the linked configuration options and modifying the configuration of the third target option. Understandably, the system receives target instructions from preset interfaces in the preset display interface; it then determines the type of the target instruction. If it belongs to the option removal category, it finds the first target option that matches the target instruction from the currently linked set of configuration options and removes it from the linked option list; if it belongs to the option addition category, it iterates through all configuration options, selects the second target option that matches the target instruction, and adds the second target option to the linked option list; if it belongs to the option modification category, it locates the third target option corresponding to the target instruction within the linked set of configuration options and makes necessary adjustments to the configuration content of the third target option.

[0097] Therefore, this application unifies the implementation schemes for different scenarios, requiring only one addition to the code, resulting in simple code logic and low development and maintenance costs. An option configuration interface is provided during startup, allowing users to fine-tune the process based on their actual application scenarios, enabling functions such as adding, removing, and modifying options, thus reducing the development costs associated with changes in the user's actual scenario.

[0098] Figure 5 is a schematic diagram of the structure of an option configuration device for a basic input / output system provided in an embodiment of this application, including:

[0099] The update option filtering module 11 is used to determine the current cyclic redundancy check value of various configuration options of the basic input / output system in the current startup process, and to filter out each updated configuration option from the configuration options based on the comparison result between the cyclic redundancy check value in the previous startup process and the current cyclic redundancy check value.

[0100] The linkage option determination module 12 is used to determine the linkage configuration option from each updated configuration option, and to determine the linked configuration option related to the linkage configuration option from the configuration options.

[0101] The option reconfiguration module 13 is used to send the linkage configuration options and related linked configuration options to the preset display interface for display during the initialization phase of the basic input / output system. The linked configuration options are reconfigured according to the target instructions returned by the preset interface in the preset display interface so as to continue the current startup process of the basic input / output system.

[0102] Therefore, this application determines the current cyclic redundancy check (CRC) value of various configuration options of the basic input / output system during the current startup process, and filters out each updated configuration option from the configuration options based on the comparison result between the CRC value of the previous startup process and the current CRC value; determines the linkage configuration option from each updated configuration option, and determines the linked configuration option related to the linkage configuration option from the configuration options; sends the linkage configuration option and the related linked configuration option to the preset display interface for display, and reconfigures the linked configuration option according to the target instruction returned by the preset interface in the preset display interface, so as to continue the current startup process of the basic input / output system.

[0103] The beneficial effects are as follows: First, this application determines the updated configuration options by comparing the current cyclic redundancy check (CRC) value of various configuration options in the basic input / output system during the current startup process with the CRC value in the previous startup process. Since CRC has advantages such as strong data integrity verification and error detection capabilities, and does not require consideration of the application scenario for updating configuration options, reliable updated configuration options can be determined. The code logic is simple, and the code development and maintenance costs are low. Furthermore, during the initialization phase of the basic input / output system, the linked configuration options and related linked configuration options can be sent to a preset display interface for display. During this phase, the target command issued by the user can be obtained through a preset interface, and the linked configuration options can be reconfigured according to the target command. In other words, users can reconfigure the linked configuration options according to the current application scenario without needing to redevelop them to adapt to the changed application scenario, reducing the cost required for the basic input / output system to complete option configuration.

[0104] Furthermore, this application also discloses an electronic device. FIG6 is a structural diagram of the electronic device according to an exemplary embodiment. The content in the figure should not be considered as any limitation on the scope of use of this application. Specifically, the electronic device may include: at least one processor 21, at least one memory 22, a power supply 23, a communication interface 24, an input / output interface 25, and a communication bus 26. The memory 22 is used to store a computer program, which is loaded and executed by the processor 21 to implement the following steps:

[0105] Determine the current cyclic redundancy check (CR) value of each configuration option of the basic input / output system during the current startup process, and filter out each updated configuration option from the configuration options based on the comparison result between the CR value of the previous startup process and the current CR value.

[0106] Determine the linked configuration options from the updated configuration options, and determine the linked configuration options related to the linked configuration options from the configuration options;

[0107] During the initialization phase of the basic input / output system, the linkage configuration options and related linked configuration options are sent to the preset display interface for display. Based on the target instructions returned by the preset interface in the preset display interface, the linked configuration options are reconfigured to continue the current startup process of the basic input / output system.

[0108] In some specific implementations, the processor executes a computer program stored in memory, which can specifically achieve the following steps:

[0109] The configuration options of the basic input / output system are sequentially assigned to the current option category;

[0110] Perform cyclic redundancy check on the variables of each configuration option in the current option category to obtain the current cyclic redundancy check value for the current option category;

[0111] The current cyclic redundancy check value for each option category is stored in the preset storage area of ​​the basic input / output system.

[0112] In some specific implementations, the processor executes a computer program stored in memory, which can specifically achieve the following steps:

[0113] The variable values ​​of each configuration option under the current option category are concatenated to obtain the concatenated string;

[0114] Perform cyclic redundancy check on the concatenated string to obtain the current cyclic redundancy check value for the current option category.

[0115] In some specific implementations, the processor executes a computer program stored in memory, which can specifically achieve the following steps:

[0116] The configuration options are categorized according to their variable names and globally unique identifiers in the basic input / output system to obtain configuration options of different categories.

[0117] Accordingly, based on the comparison between the cyclic redundancy check value from the previous startup process and the current cyclic redundancy check value, the updated configuration options are selected from the configuration options, including:

[0118] Compare the current cyclic redundancy check value of the current option category with the previous cyclic redundancy check value to obtain the comparison result; the previous cyclic redundancy check value is the cyclic redundancy check value of the current option category in the previous startup process;

[0119] If the comparison result indicates that the current cyclic redundancy check value is inconsistent with the previous cyclic redundancy check value, then each configuration option in the current option category is determined to be an updated configuration option.

[0120] In some specific implementations, the processor executes a computer program stored in memory, which can specifically achieve the following steps:

[0121] Read the variable names and globally unique identifiers of each configuration option, as well as the redundancy check value from the previous cycle, from the preset storage area;

[0122] The previous cycle redundancy check value for the current option category is determined from the previous cycle redundancy check values ​​based on the variable name and the variable's globally unique identifier.

[0123] In some specific implementations, the processor executes a computer program stored in memory, which can specifically achieve the following steps:

[0124] The updated configuration options are the configuration options updated after the previous startup process was completed, under the target application scenario. The target application scenario can be any one of the following: system settings application scenario, out-of-band scenario, or in-band scenario.

[0125] In some specific implementations, the processor executes a computer program stored in memory, which can specifically achieve the following steps:

[0126] Detect the configuration information before the update and the current configuration information for each updated configuration option;

[0127] System diagnostic logs are generated based on the configuration information before the update and the current configuration information, so that the basic input / output system can be maintained using the system diagnostic logs.

[0128] In some specific implementations, the processor executes a computer program stored in memory, which can specifically achieve the following steps:

[0129] If the currently updated configuration option is in the list of linkage options of the basic input / output system, then the currently updated configuration option is determined to be a linkage configuration option;

[0130] Based on the list of linked options of the currently updated configuration options, determine the linked configuration options that are related to the currently updated configuration options from each configuration option.

[0131] In some specific implementations, the processor executes a computer program stored in memory, which can specifically achieve the following steps:

[0132] Determine the target parameters for each configuration option; these target parameters include server type parameters and storage type parameters.

[0133] A list of linkage options is constructed based on configuration options that meet preset conditions according to the target parameters.

[0134] In some specific implementations, the processor executes a computer program stored in memory, which can specifically achieve the following steps:

[0135] Retrieve the target instruction returned by the preset interface in the preset display interface;

[0136] If the target instruction is of the option removal type, then the first target option corresponding to the target instruction is selected from the linked configuration options, and the first target option is removed from the linked option list;

[0137] If the target instruction is of the option addition type, then the second target option corresponding to the target instruction is selected from each configuration option and added to the list of linked options;

[0138] If the target instruction is of the option modification type, then the third target option corresponding to the target instruction is selected from the linked configuration options, and the configuration of the third target option is modified.

[0139] In some specific implementations, the processor executes a computer program stored in memory, which can specifically achieve the following steps:

[0140] If the preset reconfiguration termination conditions are met, the current startup process of the basic input / output system will continue.

[0141] The preset reconfiguration termination condition is that the display time of the preset interface exceeds a preset threshold or the target instruction representation ends, and the linked configuration option is reconfigured.

[0142] In some specific embodiments, the processor may further include the following steps by executing a computer program stored in memory:

[0143] During the driver execution environment phase of the Basic Input / Output System (PIOS), the PIOS is controlled to load and run various drivers; these drivers include drivers for hardware devices and extension programs for the PIOS.

[0144] During the boot device selection phase of the Elementary Input / Output System (Elementary Input / Output System), the Elementary Input / Output System is controlled to start the boot device according to the current configuration in the configuration options.

[0145] In some embodiments of this application, the power supply 23 is used to provide operating voltage for various hardware devices on the electronic device; the communication interface 24 can create a data transmission channel between the electronic device and external devices, and the communication protocol it follows can be any communication protocol applicable to the technical solution of this application, and is not specifically limited here; the input / output interface 25 is used to acquire 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.

[0146] In addition, the memory 22, as a carrier for resource storage, can be a read-only memory, random access memory, disk or optical disk, etc. The resources stored thereon can include operating system 221, computer program 222, etc., and the storage method can be temporary storage or permanent storage.

[0147] The operating system 221 is used to manage and control the various hardware devices on the electronic device and the computer program 222, which may be Windows Server, Netware, Unix, Linux, etc. In addition to including a computer program capable of performing the option configuration method of the basic input / output system executed by the electronic device as disclosed in any of the foregoing embodiments, the computer program 222 may further include a computer program capable of performing other specific tasks.

[0148] Furthermore, this application also discloses a non-volatile storage medium for storing a computer program; wherein, when the computer program is executed by a processor, it implements the aforementioned basic input / output system option configuration method. The specific steps of this method can be found in the corresponding content disclosed in the foregoing embodiments, and will not be repeated here.

[0149] Furthermore, embodiments of this application also disclose a computer program product, including a computer program / instructions that, when executed by a processor, implement the steps of the option configuration method for the basic input / output system disclosed in any of the foregoing embodiments.

[0150] The various embodiments in this specification are described in a progressive manner, with each embodiment focusing on its differences from other embodiments. Similar or identical parts between embodiments can be referred to interchangeably. For the apparatus disclosed in the embodiments, since it corresponds to the method disclosed in the embodiments, the description is relatively simple; relevant parts can be referred to in the method section.

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

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

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

[0154] The technical solutions provided in this application have been described in detail above. Specific examples have been used to illustrate the principles and implementation methods of this application. The descriptions of the above embodiments are only for the purpose of helping to understand the methods and core ideas of this application. At the same time, for those skilled in the art, there will be changes in the specific implementation methods and application scope based on the ideas of this application. Therefore, the content of this specification should not be construed as a limitation of this application.

Claims

1. A method for configuring options in a basic input / output system, characterized in that, include: Determine the current cyclic redundancy check (CR) value of each configuration option of the basic input / output system during the current startup process, and filter out each updated configuration option from the configuration options based on the comparison result between the CR value of the previous startup process and the current CR value. Determine the linkage configuration option from each of the updated configuration options, and determine the linked configuration option related to the linkage configuration option from the configuration options; During the initialization phase of the basic input / output system, the linkage configuration options and related linked configuration options are sent to a preset display interface for display. The linked configuration options are reconfigured according to the target instructions returned by the preset interface in the preset display interface, so as to continue the current startup process of the basic input / output system.

2. The option configuration method for a basic input / output system according to claim 1, characterized in that, The determination of the current cyclic redundancy check values ​​for various configuration options of the basic input / output system during the current startup process includes: The configuration options of the basic input / output system are sequentially assigned to the current option category; Perform cyclic redundancy check on the variables of each configuration option in the current option category to obtain the current cyclic redundancy check value of the current option category; The current cyclic redundancy check value for each of the aforementioned option categories is stored in a preset storage area of ​​the basic input / output system.

3. The option configuration method for the basic input / output system according to claim 2, characterized in that, The preset storage area is a non-volatile random access storage area.

4. The option configuration method for a basic input / output system according to claim 2, characterized in that, The step of performing cyclic redundancy check on the variables of each configuration option in the current option category to obtain the current cyclic redundancy check value for the current option category includes: The variable values ​​of each configuration option under the current option category are concatenated to obtain the concatenated string; Perform a cyclic redundancy check on the concatenated string to obtain the current cyclic redundancy check value for the current option category.

5. The option configuration method for the basic input / output system according to claim 2, characterized in that, Determine the option categories for the basic input / output system configuration options, including: The configuration options are classified according to their variable names and globally unique identifiers in the basic input / output system to obtain configuration options of different categories. Accordingly, based on the comparison result between the cyclic redundancy check value from the previous startup process and the current cyclic redundancy check value, the updated configuration options are selected from the configuration options, including: The current cyclic redundancy check value of the current option category is compared with the previous cyclic redundancy check value to obtain a comparison result; the previous cyclic redundancy check value is the cyclic redundancy check value of the current option category in the previous startup process. If the comparison result indicates that the current cyclic redundancy check value is inconsistent with the previous cyclic redundancy check value, then each configuration option in the current option category is determined to be an updated configuration option.

6. The option configuration method for a basic input / output system according to claim 5, characterized in that, The method further includes: When initially determining the option categories of the configuration options of the Basic Input / Output System (PIOS), at the startup of the PIOS, the configuration options are classified according to the variable names and globally unique identifiers of the configuration options of the PIOS to obtain configuration options of different option categories. For any of the configuration options in the aforementioned option category, read the set value of the configuration option and calculate the initial cyclic redundancy check value corresponding to the configuration option; The initial cyclic redundancy check value is stored in the preset storage area.

7. The option configuration method for a basic input / output system according to claim 5, characterized in that, Before comparing the current cyclic redundancy check value of the current option category with the previous cyclic redundancy check value, the method further includes: Read the variable name, the globally unique identifier of the variable, and the previous cycle redundancy check value of each configuration option from the preset storage area; The previous cycle redundancy check value of the current option category is determined from each of the previous cycle redundancy check values ​​based on the variable name and the variable's globally unique identifier.

8. The option configuration method for a basic input / output system according to claim 1, characterized in that, The updated configuration options are the configuration options updated after the previous startup process is completed in the target application scenario. The target application scenario can be any one of the following: system setting application scenario, out-of-band scenario, or in-band scenario.

9. The option configuration method for a basic input / output system according to claim 8, characterized in that, After filtering out the updated configuration options from the configuration options based on the comparison result between the cyclic redundancy check value from the previous startup process and the current cyclic redundancy check value, the process further includes: Detect the configuration information before the update and the current configuration information of each of the updated configuration options; A system diagnostic log is generated based on the configuration information before the update and the current configuration information, so as to use the system diagnostic log to maintain the basic input / output system.

10. The option configuration method for a basic input / output system according to claim 1, characterized in that, The step of determining the linkage configuration option from each of the updated configuration options, and determining the linkage-related configuration option from the configuration options, includes: If the currently updated configuration option is in the list of linkage options of the basic input / output system, then the currently updated configuration option is determined to be a linkage configuration option; Based on the list of linked options of the currently updated configuration options, determine the linked configuration options related to the currently updated configuration options from each of the configuration options.

11. The option configuration method for a basic input / output system according to claim 10, characterized in that, Construct the list of linkage options, including: Determine the target parameters for each of the configuration options; wherein the target parameters include server type parameters and storage type parameters; The list of linkage options is constructed based on the configuration options that meet the preset conditions according to the target parameters.

12. The option configuration method for a basic input / output system according to claim 10, characterized in that, The step of reconfiguring the linked configuration options according to the target instruction returned by the preset interface in the preset display interface includes: Obtain the target instruction returned by the preset interface in the preset display interface; If the target instruction is of the option removal type, then the first target option corresponding to the target instruction is selected from the linked configuration options, and the first target option is removed from the linked option list; If the category of the target instruction is option addition, then the second target option corresponding to the target instruction is selected from each of the configuration options, and the second target option is added to the list of linked options; If the target instruction is of the option modification type, then a third target option corresponding to the target instruction is selected from the linked configuration options, and the configuration of the third target option is modified.

13. The option configuration method for a basic input / output system according to any one of claims 1 to 12, characterized in that, After sending the linkage configuration options and related linked configuration options to the preset display interface for display, the process further includes: If the preset reconfiguration termination condition is met, then the current startup process of the basic input / output system continues. The preset reconfiguration termination condition is that the display time of the preset interface exceeds a preset threshold or the target instruction representation ends the reconfiguration of the linked configuration option.

14. The option configuration method for a basic input / output system according to claim 13, characterized in that, Continue executing the current startup process of the basic input / output system, including: During the driver execution environment phase of the basic input / output system, the system is controlled to load and run various drivers; wherein each driver includes a driver for a hardware device and an extension program for the basic input / output system. During the boot device selection phase of the basic input / output system, the basic input / output system is controlled to start the boot device according to the current configuration in the configuration options.

15. The option configuration method for a basic input / output system according to claim 1, characterized in that, The target instruction is determined by the user based on the linkage configuration options, the linked configuration options, and the target scenario, and is issued through the preset interface.

16. The option configuration method for a basic input / output system according to claim 1, characterized in that, The configuration options include boot order, security settings, date and time settings, processor speed adjustment, and hard disk partitioning.

17. The option configuration method for a basic input / output system according to claim 1, characterized in that, The method further includes: selecting a cyclic redundancy check generation algorithm according to the verification accuracy requirements to generate cyclic redundancy check values.

18. A computer program product comprising a computer program / instructions, characterized in that, When the computer program / instruction is executed by the processor, it implements the steps of the option configuration method of the basic input / output system according to any one of claims 1 to 17.

19. An electronic device, characterized in that, include: Memory, configured to store computer programs; A processor is configured to execute the computer program to implement the steps of the optional configuration method of the basic input / output system as described in any one of claims 1 to 17.

20. A non-volatile storage medium for computers, characterized in that, The computer non-volatile storage medium stores a computer program, which, when executed by a processor, implements the steps of the option configuration method of the basic input / output system as described in any one of claims 1 to 17.