Basic input output system configuration method and electronic device
By generating standardized BIOS configuration sets and cascading dependencies, the problem of configuration replication across server models and architectures is solved, enabling efficient and automated configuration of server clusters.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- INSPUR SUZHOU INTELLIGENT TECH CO LTD
- Filing Date
- 2026-05-22
- Publication Date
- 2026-06-19
Smart Images

Figure CN122247858A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of server configuration technology, and in particular to a basic input / output system configuration method and electronic device. Background Technology
[0002] With the large-scale deployment of data centers, server clusters cover a variety of models and architectures. When copying the configuration of the Basic Input / Output System (BIOS) in a server, it is impossible to achieve universal configuration copying between servers of different models and architectures due to the limitations of proprietary interfaces, configuration item naming, and value rules of different models. Summary of the Invention
[0003] This application provides a basic input / output system configuration method and electronic device to at least solve the problem in related technologies that it is impossible to achieve universal configuration replication between servers of different models and architectures.
[0004] This application provides a basic input / output system configuration method, comprising: obtaining configuration items of the basic input / output system of a source server and generating a standardized configuration set; performing initial configuration on the basic input / output system of a target server according to the standardized configuration set to obtain target error text, wherein the target server is a server of a different model and / or different architecture than the source server; performing standardization processing on the target error text to obtain a cascading relationship set, wherein the standardization processing is used to map the error texts of servers of different models and / or different architectures to a unified configuration item relationship representation, and the cascading relationship set is used to indicate the dependency relationship between each configuration item; and determining the target configuration scheme of the basic input / output system of the target server according to the cascading relationship set.
[0005] This application also provides a basic input / output system configuration device, comprising: an acquisition module for acquiring configuration items of the basic input / output system of a source server and generating a standardized configuration set; a first processing module for performing initial configuration on the basic input / output system of a target server according to the standardized configuration set to obtain target error text, wherein the target server is a server of a different model and / or different architecture than the source server; a second processing module for standardizing the target error text to obtain a cascading relationship set, wherein the standardization processing is used to map the error texts of servers of different models and / or different architectures to a unified configuration item relationship representation, and the cascading relationship set is used to indicate the dependency relationship between each configuration item; and a determination module for determining the target configuration scheme of the basic input / output system of the target server according to the cascading relationship set.
[0006] This application also provides an electronic device, including: a memory for storing a computer program; and a processor for implementing the steps of any of the above-described basic input / output system configuration methods when executing the computer program.
[0007] This application also provides a computer-readable storage medium storing a computer program, wherein when the computer program is executed by a processor, it implements the steps of any of the above-described basic input / output system configuration methods.
[0008] This application also provides a computer program product, including a computer program that, when executed by a processor, implements the steps of any of the above-described basic input / output system configuration methods.
[0009] The basic input / output system configuration method and electronic device provided in this application collect data on the basic input / output system configuration items of the source server, generate a standardized configuration template, obtain target error text by combining the initial configuration of target servers of different models and / or different architectures, extract the cascading dependencies between configuration items through standardized processing, and then determine the optimal configuration scheme that satisfies the dependency constraints. This can break down the adaptation barriers of different models and architectures of servers, realize the generalization and automation of the configuration process, and improve the efficiency of large-scale server cluster configuration. Attached Figure Description
[0010] 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.
[0011] Figure 1 This is a schematic diagram of an application scenario provided by an embodiment of this application;
[0012] Figure 2 A flowchart illustrating a basic input / output system configuration method provided in an embodiment of this application;
[0013] Figure 3 for Figure 2 A flowchart illustrating the specific implementation of step S102 in the illustrated embodiment;
[0014] Figure 4 for Figure 2 A flowchart illustrating the specific implementation of step S103 in the illustrated embodiment;
[0015] Figure 5 A schematic diagram of a data structure for historical configuration experience provided in an embodiment of this application;
[0016] Figure 6 for Figure 2 A flowchart illustrating the specific implementation of step S104 in the illustrated embodiment;
[0017] Figure 7 A cascading dependency graph provided for embodiments of this application;
[0018] Figure 8 A schematic diagram of the basic input / output system configuration device provided in the embodiments of this application;
[0019] Figure 9 A schematic diagram of the structure of the electronic device provided in this application. Detailed Implementation
[0020] 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.
[0021] It should be noted that, in the description of this application, 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. The terms "first," "second," etc., in this application are used to distinguish similar objects and are not used to describe a specific order or sequence.
[0022] 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.
[0023] Figure 1 This is a schematic diagram illustrating an application scenario provided by an embodiment of this application. For example... Figure 1 As shown, a server cluster consists of multiple servers, each with different models and architectures.
[0024] As core control parameters for server startup, security policies, power management, and hardware compatibility, BIOS configuration items play a crucial role in the stability, operational efficiency, and resource utilization of the cluster through consistent replication.
[0025] In server clusters, to improve configuration efficiency, a configuration synchronization method is typically used to configure BIOS settings. This involves batch copying configuration settings from a source server to other servers. For example, the configuration settings on server 1 can be batch copied to servers 2 through M.
[0026] However, a server cluster may contain servers of various models and architectures, with different brands corresponding to different models. Servers of different models or architectures may have different interfaces, configuration item naming, and value formats. For example, for the same configuration item, model A might name it "UEFI Boot Option 1," while model B might name it "UEFI Boot Item 1." Model A might use a Boolean value, while model B might use an enumerated value.
[0027] In related technologies, due to the differences in interfaces, configuration item naming, and value formats of servers of different models or architectures, it is impossible to achieve universal configuration replication between servers of different models and architectures. For the configuration of servers of different models or architectures, it is necessary to rely on manual configuration one by one, which results in low configuration efficiency because it is impossible to achieve universal configuration replication between servers of different models and architectures.
[0028] Furthermore, there are complex cascading dependencies between the various configuration items, meaning that the startup configuration depends on a fixed startup order. If the configuration order is disordered, it may lead to configuration failure or system crash. For cold starts of new models or new architecture servers, there is a lack of historical configuration experience, and maintenance personnel need to try and fail from scratch, which is time-consuming and risky.
[0029] Based on this, this application provides a basic input / output system configuration method. By collecting data on the basic input / output system configuration items of the source server, a standardized configuration template is generated. The target error text is obtained by combining the initial configuration of the target server across different models and / or architectures. The cascading dependencies between configuration items are extracted through standardized processing, and then the optimal configuration scheme that satisfies the dependency constraints is determined. This method can break down the adaptation barriers of different models and architectures of servers, realize the generalization and automation of the configuration process, and improve the efficiency of large-scale server cluster configuration.
[0030] Figure 2 A flowchart illustrating a basic input / output system configuration method provided in this application embodiment is shown below. Figure 2 As shown, embodiments of this application provide a basic input / output system configuration method, which is described in detail below:
[0031] S101. Obtain the configuration items of the basic input / output system of the source server and generate a standardized configuration set.
[0032] The source server is a server that has already completed the BIOS standardization configuration, that is, a server used as a configuration template. The source server can be a server of any architecture and any model.
[0033] Configuration items are hardware parameters that can be read and written in the BIOS. According to their functions, configuration items can be divided into four categories: boot type, security type, power consumption type, and memory type, such as UEFI Boot Option 1 (boot type) and Secure Boot (security type).
[0034] The standardized configuration set is a structured collection of all writable configuration items in the source server's BIOS. It includes multiple configuration items and can be formatted as {<configuration item name, value, type>, ...}.
[0035] Optionally, obtain the configuration items of the basic input / output system of the source server and generate a standardized configuration set, including: extracting at least one type of configuration item and its corresponding value from the source server by calling the basic input / output system configuration query interface through the standardized server management interface, and obtaining an initial configuration set, wherein the type includes at least one of the following: startup type, security type, power consumption type and memory type; filtering the read-only configuration items in the initial configuration set and marking the writable range of the writable configuration items to obtain a standardized configuration set.
[0036] Standardized server management interfaces include Intelligent Platform Management Interface (IPMI) and Redfish API. Configuration item types include: startup-related items (related to server startup), security-related items (for ensuring server hardware security), power-related items (for controlling server power consumption), and memory-related items (related to memory operation). The initial configuration set is the original set of all source server BIOS configuration items and their corresponding values extracted through the configuration query interface. Read-only configuration items are hardware-bound BIOS items that cannot be manually modified, such as hardware version, factory identifier, and server serial number; they are for display purposes only and cannot be written to. Writable configuration items are BIOS configuration items whose values can be manually modified by the user. They are the core objects for cross-server replication, and the writable range is the legal value boundary of the writable configuration item, such as on / off status (enabled / disabled), numerical range (e.g., CPU power consumption threshold of 80W-150W), and enumerated values (e.g., memory frequency 2400MHz / 2666MHz).
[0037] Using a standardized server management interface (IPMI / Redfish), the BIOS configuration query interface is invoked to extract all BIOS configuration items and their corresponding values from the source server, organizing them into an initial configuration set. This ensures that the configuration item names, values, and types correspond completely. The initial configuration set is then processed: first, read-only configuration items such as hardware version and factory identifiers are filtered out, retaining only writable configuration items; then, each writable configuration item is labeled with its valid writable range. Finally, the sets are organized into a standardized configuration set according to a unified format, ensuring cross-server reusability and validity. This standardized configuration set can be denoted as V_source.
[0038] The above method extracts configuration items based on the IPMI / Redfish industry standard, which can fully adapt to servers with various architectures and is compatible with various mainstream server brands. It has strong hardware universality and product versatility, and can achieve full technical coverage of all types of server products. It does not require modification of server hardware or customization of drivers. The supporting technical system is mature and complete, and can realize batch industrial deployment and large-scale mass production application.
[0039] S102. Perform initial configuration of the basic input / output system of the target server according to the standardized configuration set to obtain the target error text. The target server is a server of a different model and / or different architecture than the source server.
[0040] The target server is the server to be configured in BIOS. It is a different model and / or architecture from the source server and is the object of configuration replication.
[0041] The initial configuration involves writing trial-and-error configurations to the target server in a random order based on a standardized configuration set. This is used to capture error messages from configuration failures so that the dependencies between configuration items can be determined later.
[0042] The target error text is the error message captured when the configuration item writing fails during the initial configuration process of the target server.
[0043] The system iterates through the standardized configuration set, writing configuration items sequentially to the target server for initial configuration. If a configuration item fails to write, error messages are collected, filtered, and the resulting error text is the target error message. This error message includes information such as the error code, error description, timestamp, and the name of the current configuration item. The writing process only operates on the BIOS configuration area, does not trigger service restarts, does not consume service resources, and has no impact on the core data center. Writing only one configuration item at a time avoids batch failures that would require overall rework, reducing the probability of configuration rework.
[0044] For example, when randomly writing the configuration item "UEFI Boot Option1", the target server returns a write failure and captures the error message "[Year B Month C Day 10:00:00] Error code: E003! Unable to configure UEFI Boot Option1, Fixed Boot Order Control state must be set first". The error message is then denoised and filtered to remove invalid information such as timestamps and error codes, resulting in the target error text "Unable to configure UEFI Boot Option1, Fixed Boot Order Control state must be set first".
[0045] S103. Standardize the target error text to obtain a cascading relationship set. The standardization process is used to map the error texts of servers of different models and / or different architectures into a unified configuration item relationship representation. The cascading relationship set is used to indicate the dependency relationship between each configuration item.
[0046] Standardization is the process of mapping non-standard error texts from different models and architectures to a unified representation of configuration item relationships. It transforms natural language error text into machine-readable structured data. The target error text can be vendor-defined non-standard error text, implicit error text without error codes, or other non-standard error text. The cascading relationship set is a structured set indicating the dependencies between configuration items. It includes multiple cascading relationships, with a structure such as <constrained item X, constraint item Y, constraint condition Z>. This means that constraint item Y must be configured to satisfy constraint condition Z before constrained item X can be successfully configured. For example, a cascading relationship might be that Fixed Boot Order Control must be disabled before UEFI Boot Option 1 can be enabled.
[0047] In one possible implementation, a set of cascading relationships can be generated through template matching. Specifically, based on historical configuration experience, a dedicated template for the corresponding model or architecture can be generated. For example, if {X} fails to configure, {Y} needs to be enabled / disabled first, where Z is the parameter value corresponding to "enable / disable". Then, semantic analysis is performed on the target error text to determine the specific content corresponding to X, Y, and Z, and this content is filled into a general template to obtain a set of cascading relationships.
[0048] In one possible implementation, a set of cascading relationships can be generated through experience completion. Specifically, experiences similar to the current configuration item can be selected from a pre-built experience library, and the target error text can be transformed into a set of cascading relationships based on these experiences.
[0049] In the above method, natural language processing semantic analysis and template matching can identify non-standard errors and uncoded implicit dependencies, improve the accuracy of cascading relationship sets, and provide a data foundation for determining subsequent target configuration schemes.
[0050] S104. Based on the cascading relationship set, determine the target configuration scheme of the basic input / output system of the target server.
[0051] The target configuration scheme is the optimal BIOS configuration execution sequence generated for the target server based on the set of cascading relationships, which satisfies all the dependencies of the configuration items. In other words, it is the final BIOS configuration order executed by the target server.
[0052] The set of cascading relationships can be constructed into a dependency graph containing multiple nodes and directed edges. An execution sequence of configuration items that satisfy all dependencies can be generated by topological sorting. Then, one of the sequences can be selected as the target configuration scheme.
[0053] The basic input / output system configuration method provided in this application collects data on the basic input / output system configuration items of the source server, generates a standardized configuration template, obtains target error text by combining the initial configuration of target servers of different models and / or different architectures, extracts the cascading dependencies between configuration items through standardized processing, and then determines the optimal configuration scheme that satisfies the dependency constraints. This method can break down the adaptation barriers of different models and architectures of servers, realize the generalization and automation of the configuration process, and improve the efficiency of large-scale server cluster configuration.
[0054] Optional, see Figure 3 , Figure 3 for Figure 2 The flowchart illustrates the specific implementation of step S102 in the illustrated embodiment. Initial configuration of the target server's basic input / output system is performed based on the standardized configuration set, resulting in the target error text, including:
[0055] S201. Traverse the configuration items in the standardized configuration set and send write requests to the target server in random order.
[0056] A write request is an instruction sent to a target server to write the value of a configuration item from a standardized configuration set into its BIOS.
[0057] Iterate through the configuration items in V_source and send write requests to the target server one by one in random order, writing only one configuration item at a time.
[0058] S202. Determine whether the write was successful.
[0059] Listen for the interface response. If a response indicating successful write is returned, the write operation was successful; if a response indicating failure is returned, the write operation failed.
[0060] If the write operation is successful, proceed to step S203; if the write operation fails, proceed to steps S204 to S206.
[0061] S203. In response to the write success message returned by the target server, update the configuration status of the corresponding configuration item to "configuration successful".
[0062] The write success message is the response information returned by the target server after receiving the write request and successfully writing the configuration item value into the BIOS. It is used to confirm that the configuration item write operation is complete.
[0063] S204. In response to the write failure information returned by the target server, update the configuration status of the corresponding configuration item to configuration failure, and obtain the error information, which includes at least one of the following: error code, error description, timestamp, and current configuration item name.
[0064] The write failure message is the response information returned by the target server when it fails to write the configuration item value to the BIOS after receiving the write request, which triggers the error message capture process.
[0065] The error message contains core information obtained from the target server when a configuration item fails to be written. The error code is an encoding that identifies the type of failure, the error description is text explaining the reason for the failure, the timestamp is the specific time of the write failure, and the current configuration item name is the identifier of the configuration item that failed to be written.
[0066] Optionally, after updating the configuration status of the corresponding configuration item to "configuration failed", the method also includes storing the error information in the error log buffer.
[0067] S205. Construct the correspondence between error messages and configuration items to obtain the initial error text.
[0068] The correspondence between configuration items and error messages is structured and organized to form the initial error text.
[0069] S206. Denoise the initial error text to obtain the target error text. The denoising process is used to filter out invalid characters in the initial error text.
[0070] Invalid characters include redundant spaces, newlines, special symbols, and irrelevant identifiers. The target error text is the text obtained after denoising the initial error text, retaining only the core semantics related to the configuration failure.
[0071] In the above method, the standardized configuration set is traversed in random order and write requests are sent to the target server in sequence. The configuration status is dynamically updated synchronously according to the write results. Then, an initial error text is formed by constructing a one-to-one correspondence between error information and configuration items. After noise reduction and filtering out invalid characters, a standardized target error text is obtained. This method can provide accurate input for subsequent dynamic template matching or cross-model experience completion with complete and standardized error data. It breaks through the adaptation barrier of different error expression differences of different models / architecture servers. The whole process is automated to replace tedious manual operations, which significantly reduces operation and maintenance costs and operation time. A closed loop is formed from trial and error, data capture to standardization processing, which effectively reduces the efficiency loss caused by blind trial and error and can improve the overall efficiency and reliability of cross-server BIOS configuration.
[0072] Optional, see Figure 4 , Figure 4 for Figure 2 The flowchart illustrates the specific implementation of step S103 in the illustrated embodiment. The target error text is standardized to obtain a cascading relationship set, including:
[0073] S301. Determine whether the length of the target error text is greater than or equal to the first threshold.
[0074] The first threshold is a preset threshold used to determine whether the length of the target error text meets the template matching conditions. For example, the first threshold is 5 characters.
[0075] If the length of the target error text is greater than or equal to the first threshold, proceed to step S302; if the length of the target error text is less than the first threshold, proceed to step S309.
[0076] S302. Construct a general template set based on historical error messages. The general template set is used to indicate the configuration item constraint relationships of servers of different models and / or different architectures.
[0077] Historical error texts are a collection of error messages and corresponding correct configuration information generated during the BIOS configuration process of different models and architectures of servers in the past due to failure to write configuration items. They have been standardized and organized.
[0078] For example, constructing a general template set based on historical error messages includes: obtaining historical error messages; clustering the historical error messages according to server model and / or configuration item type to generate at least one cluster; segmenting the text in the cluster and determining the weight of each segment; identifying segments with weights greater than a third threshold as core feature words; and constructing a general template from the core feature words according to the basic syntactic structure to obtain a general template set.
[0079] Each cluster contains multiple historical error messages of any model and any configuration item type. For example, cluster 1 contains multiple historical error messages of model A and startup type, and cluster 2 contains multiple historical error messages of model A and security type.
[0080] For example, the cluster corresponding to the error in the startup sequence configuration of model A contains 3 pieces of text: (1) The UEFI BootOption1 configuration failed. First, disable the Fixed Boot Order Control; (2) The UEFI Boot Option2 configuration failed. First, turn off the Fixed Boot Order Control; (3) The Legacy Boot configuration failed. First, enable SecureBoot.
[0081] Word segmentation of the text in the cluster includes filtering stop words such as "of" and "is", and splitting the text into multiple word segments. For example, after word segmentation of the above text (1), we get: UEFI Boot, Option1, configuration failed, need to, disable, Fixed Boot Order Control.
[0082] Determine the weight of each word segment, for example, through the Term Frequency – Inverse Document Frequency (TF-IDF) algorithm. After calculating the weights of each word segment by TF-IDF, determine the word segments with weights greater than the third threshold as core feature words. Among them, the third threshold can be preset, such as 0.5; the third threshold can also be determined according to each weight. For example, after arranging the weights from largest to smallest, determine the 5th weight as the third threshold. At this time, the core feature words are the word segments corresponding to the top 5 weights. For example, the core feature words and their corresponding weights are: configuration failed (0.8), need to (0.7), UEFI Boot (0.6), Fixed Boot Order Control (0.5), disable (0.5).
[0083] According to the basic syntactic structure, combine the core feature words into a text that conforms to the constraint relationship and is logically correct, that is, a general template. Among them, the basic grammar structure is, for example, the subject-predicate-object structure, causal relationship, etc. The syntactic structure is, for example: {configuration item} configuration failed, need to {action} {constraint item}. The general template is, for example, {X} configuration failed, need to enable / disable {Y}.
[0084] For each cluster, there is a corresponding general template, and all the general templates form a general template set.
[0085] In simple terms, TF-IDF extracts a general framework of patterns from a set of error messages of the same model and type. Because error messages for different server models and configuration items may be worded differently—for example, some might use "disabled," while others might use "closed"—the core logic remains the same: "Configuration item X failed; another constraint Y needs to be set to the value of Z first." TF-IDF filters frequently occurring characteristic words that represent this core logic, extracting these common core logics into fixed templates, thus avoiding the need to re-analyze the entire set of error messages every time an error occurs.
[0086] S303. Calculate the first similarity between the word segmentation in the target error text and the word segmentation in the general template set.
[0087] Calculate the first similarity between the word segment in the target error text and the corresponding word segment of each general template in the general template set. The first similarity can be the average of the similarities of multiple word segments. For example, cosine similarity.
[0088] For example, the target error text is: "UEFI boot item 1 configuration failed, fixed boot order control needs to be disabled first." Word segmentation yields: "[UEFI boot item 1, configuration failed, needs to be disabled first, fixed boot order control]". The general template set includes general template A and general template B. The cosine similarity between each word segment of the target error text and its corresponding word in general template A is calculated. Then, the average cosine similarity of all word segments is taken, resulting in a first similarity of 0.9 between the target error text and general template A. Similarly, the first similarity between the target error text and general template B is 0.5.
[0089] S304. Determine whether the first similarity is greater than or equal to the second threshold.
[0090] The second threshold is a preset value used to determine whether the length of the target error text meets the similarity threshold for template matching. For example, the second threshold is 0.5.
[0091] If any of the first similarities is greater than or equal to the second threshold, proceed to step S305. If all the first similarities are less than the second threshold, it means that none of the general templates match the target error text, then proceed to step S309.
[0092] S305. The general template with the highest similarity in the general template set is determined as the target template.
[0093] For example, the first similarity of general template A is the highest, which is 0.9, so general template A is determined as the target template.
[0094] S306. Calculate the second similarity between the word segmentation in the configuration item dictionary and the word segmentation in the target error text.
[0095] The configuration item dictionary is a structured dictionary used to store the names and synonyms of BIOS configurable items for various server models and architectures, enabling semantic mapping of configuration items across models and architectures.
[0096] For example, the second similarity between "UEFI Boot Option 1" and "UEFI Boot Option 1" in the configuration item dictionary is 0.95, and the second similarity between "UEFI Boot" and "Legacy Boot" in the configuration item dictionary is 0.4.
[0097] S307. The word segment with the second highest similarity in the configuration item dictionary is determined as the target word segment.
[0098] For example, the second most similar word segment in the configuration item dictionary and their correspondence with the word segment in the target error text are as follows: "UEFI Boot Option 1" has the highest second similarity with "UEFI Boot Option 1" in the configuration item dictionary, at 0.95; "Fixed Boot Order Control" has the highest second similarity with "Fixed Boot Order Control" in the configuration item dictionary, at 0.93; and "Disabled" has the highest second similarity with "Disabled" in the configuration item dictionary, at 0.88.
[0099] S308. Fill the target template according to the target word segmentation to obtain the cascading relationship set.
[0100] For example, in the above target word segmentation, UEFI Boot Option1 corresponds to X in the target template, Fixed BootOrder Control corresponds to Y in the target template, and disabled corresponds to the constraint condition Z in the target template. After filling, we get...<UEFI Boot Option1, Fixed Boot Order Control, disabled> This represents the cascading relationship corresponding to the configuration item. Representing all configuration items in the error messages as the above cascading relationships yields a set of cascading relationships.
[0101] In simple terms, it uses a template refined from TF-IDF to fill in the blanks in the target error text, transforming non-standard text into standard structured data. The target error text may have model-specific expressions, such as "UEFIBoot Option1" in model A and "UEFI boot item 1" in model B, which cannot be directly parsed using fixed rules. This application finds the corresponding general template through similarity matching, such as "{X} configuration failed, {Y} needs to be enabled / disabled first," and then uses word vector matching to fill in specific configuration items for {X}, constraint items for {Y}, and constraint conditions for {Z} in the template, completing the transformation from non-standard text to standard relationships.
[0102] In the above method, when the target error text length meets the condition, a general template set is constructed based on historical error texts. The target template is determined by combining word segmentation similarity matching, and the configuration item dictionary is used to supplement word segmentation to obtain a cascading relationship set. This effectively solves the technical pain point of inconsistent BIOS error text representations for different models and architectures of servers. The general template set breaks down the adaptation barrier of model-specific error representations by mapping the configuration item constraints of different models / architectures of servers, enabling non-standard error texts to be parsed in a standardized manner. This makes up for the limitation of related technologies that can only handle explicit standard errors, thereby improving configuration efficiency.
[0103] S309. Construct search keywords based on the target error text.
[0104] Use key content from the target text as search keywords, for example, search keywords such as "UEFI boot item configuration failure".
[0105] S310 determines the initial valid records in the experience base based on the search keywords.
[0106] The experience base stores historical configuration experiences for different server models and their corresponding original experience confidence levels. Initially valid records are cross-model experience records where the constraint relationship type is consistent with the current scenario and the semantic vector similarity of the configuration items is greater than or equal to the fourth threshold. Among them, the constraint relationship type includes, for example, sequential dependency and parametric dependency.
[0107] The experience base is a database that stores historical configuration experience for servers of different models and architectures; that is, the experience base includes multiple historical configuration experiences.
[0108] For example, see Figure 5 , Figure 5 This is a schematic diagram of a data structure for historical configuration experience provided in an embodiment of this application. The historical configuration experience includes at least one of the following fields: experience record identifier, composite search key, core cascading relationship, original experience confidence level, and metadata auxiliary fields. The experience record identifier is a unique identifier for each historical configuration experience; the composite search key is a retrieval identifier for the historical configuration experience; for example, if UEFI startup configuration fails, the composite search key can be used to quickly filter historical configuration experiences that are correlated with the current search keywords; the core cascading relationship is information indicating the configuration item dependencies of this record, for example...<UEFI Boot Option1, Fixed Boot Order Control, disabled> It is used to provide directly reusable configuration item dependency logic, avoiding repeated trial and error on the target server.
[0109] The original experience confidence level is an indicator that quantifies the reliability of historical configuration experience. Its structure includes the current value, the initial value, and update records. The initial value is the base confidence level at the time of initial storage and can be dynamically adjusted based on subsequent reuse results (success or failure). An initial value of 0.5 is used to record the operation, time, amount of change, and reason for confidence changes. For example, on year A, month B, day C, reuse was successful, confidence level increased by 0.05, server A configuration reuse was successful.
[0110] Metadata auxiliary fields are additional data used to support retrieval and migration confidence calculation, such as model number, constraint relationship type, configuration item semantic vector, cross-model migration weight, last update time, number of successful reuses, and number of failed reuses.
[0111] The initial valid records identified in the experience base need to meet the following two conditions: (1) Constraint logic is consistent, for example, they are all sequential requirements of "A must be configured before B can be configured", excluding other types of requirements; (2) Core configuration logic is related, for example, they are all about "UEFI startup configuration", not unrelated "security configuration". Among them, the core configuration logic is related by whether the semantic vector similarity of the configuration items is greater than or equal to the fourth threshold, which is a preset similarity threshold, such as 0.7.
[0112] For example, the configuration item for server A is "PXE Boot Enable", and the target error text is "PXE boot enable configuration failed, network boot control needs to be enabled first". Its matching degree with the general template is 0.4, which is less than the second threshold. The generated search keywords are: "PXE boot enable configuration failed" and "PXE Boot Enable". Two records are retrieved from the experience base using these keywords: "PXE Boot configuration failed, Network Boot Control needs to be enabled first" for server A and "USB Boot configuration failed, Device Boot Control needs to be enabled first" for server B. First, it is determined whether the constraint logic is consistent: both server A and server B are "sequentially dependent" (A is enabled first, then B is configured), consistent with the current requirement. Then, it is determined whether the core logic relevance is satisfied: the experience for server A is "PXE boot related", and its semantic vector similarity with the current "PXE Boot Enable" is 0.85, greater than the fourth threshold, indicating core logic relevance. The experience for server B is "USB related", and its semantic vector similarity with the current "PXE Boot Enable" is 0.85, greater than the fourth threshold, indicating core logic relevance. The semantic vector similarity of "BootEnable" is 0.3, which is less than the fourth threshold. Since the core logic is irrelevant, it is excluded. The final initial valid record is: {PXE boot-related experience of model A server}.
[0113] S311. Evaluate the initial valid records based on migration confidence to obtain the target valid records.
[0114] The target valid records are those records among the initial valid records whose confidence levels meet preset conditions. For example, the confidence level is greater than a preset threshold.
[0115] For example, evaluating initial valid records based on migration confidence to obtain target valid records includes: obtaining the original experience confidence of the initial valid records from the experience base, whereby the original experience confidence is used to characterize the credibility of the initial valid records in the historical reuse process; obtaining the configuration item type weight based on the degree of association between the configuration items in the initial valid records and the configuration items corresponding to the target error text in terms of type; determining the cross-model migration weight based on the compatibility between the server corresponding to the initial valid records and the target server in terms of model; calculating the migration confidence of the initial valid records based on the original experience confidence, configuration item type weight, and cross-model migration weight; and determining the initial valid records with a migration confidence greater than or equal to the fifth threshold as target valid records.
[0116] The migration confidence C can be expressed as:
[0117] Formula (1)
[0118] in, The confidence level is the original experience level. Weights for configuration item types, This refers to the weighting for cross-model migration. Configuration item type weights are as follows: 1 for the same type, 0.8 for similar types, and 0.3 for dissimilar types. Cross-model migration weights are as follows: 0.8 for servers of the same model and architecture, and 0.5 for servers of different models or architectures.
[0119] The fifth threshold is a preset value, such as 0.6.
[0120] For example, the initial valid records include initial valid record A and initial valid record B.
[0121] In the initial valid record A, the original experience confidence level is 0.9, the server model is different from the target server, the cross-model migration weight is 0.5, the configuration type is the same as the current configuration type, the configuration type weight is 1, then the confidence level C1 = 0.9 × 0.5 × 1 = 0.45, which is less than the fifth threshold of 0.6, so this record is not retained.
[0122] In the initial valid record B, the original experience confidence level is 0.8, it is the same model as the target server, the cross-model migration weight is 0.8, and it is the same as the current configuration type, with a configuration type weight of 1. Therefore, the confidence level C1 = 0.8 × 0.8 × 1 = 0.64, which is greater than the fifth threshold of 0.6. So this record is determined as the target valid record.
[0123] S312. Determine the set of cascading relationships based on the valid records of the target.
[0124] The core cascading relationships recorded in the target's valid records are identified as the cascading relationships corresponding to the current configuration item. For each configuration item, its corresponding cascading relationship is determined, resulting in a set of cascading relationships.
[0125] The above method addresses scenarios where the target error text is too short or the template matching is insufficient. It proposes a technical solution to construct search keywords based on the error text, filter initial valid records from the experience base, and obtain the target valid records through migration confidence evaluation. This improves the accuracy of the generated cascading relationship set. Specifically, the keyword retrieval and quantitative evaluation of migration confidence ensure the relevance and reliability of cross-model experience reuse, avoids interference from invalid experience on dependency resolution, and enables new model / new architecture servers to reuse historical configuration experience. This significantly reduces manual trial-and-error costs and improves configuration efficiency in cold start scenarios.
[0126] Optional, see Figure 6 , Figure 6 for Figure 2 The flowchart illustrates the specific implementation of step S104 in the illustrated embodiment. Based on the cascading relationship set, the target configuration scheme of the target server's basic input / output system is determined, including:
[0127] S401. Using the configuration items in the standardized configuration set as nodes and the directions of the constraint items in the cascading relationship set pointing to the constrained items as directed edges, construct a cascading dependency graph.
[0128] Using the configuration items in the standardized configuration set V_source as nodes, a node set V={ For each pair in the set of cascading relationships...<X,Y,Z> Construct a directed edge E=(Y,X) from Y to X, indicating that "Y must be configured first (satisfying Z) before X can be configured". Ensure that all constrained items have corresponding directed edges pointing to the constrained items, and check for no circular dependencies (such as X depending on Y, and Y depending on X). If they exist, trigger an exception alarm.
[0129] For example, see Figure 7 , Figure 7 A cascading dependency graph is provided as an embodiment of this application. Wherein, the configuration item node V={ (Fixed Boot Order Control), (UEFI Boot Option 1) (UEFI BootOption2) (Secure Boot)}, directed edge .
[0130] In the above method, a cascading dependency graph is constructed with configuration items as nodes and dependencies as directed edges. This can automatically eliminate circular dependencies, replace manual sorting of dependency relationships, and improve the reliability and execution efficiency of configuration.
[0131] S402. Perform topological sorting on the nodes in the cascading dependency graph to generate the target configuration sequence.
[0132] For example, the target configuration sequence can be generated as follows: traverse the directed edges in the cascading dependency graph, count the number of directed edges that each node has as a pointed node, and obtain the initial in-degree of the node; add nodes with an initial in-degree of zero to the processing queue; repeat the following process until the processing queue is empty: take a first node from the processing queue and add the first node to the initial configuration sequence; traverse the first directed edge starting from the first node, and decrement the current in-degree of the second node pointed to by the first directed edge by one; if the current in-degree of the second node becomes zero after decrementing one, then add the second node as the first node to the processing queue; when the processing queue is empty, if the number of nodes added to the initial configuration sequence is equal to the total number of nodes in the cascading dependency graph, then the initial configuration sequence is determined to be valid and is identified as the target configuration sequence; otherwise, a circular dependency is determined and the configuration is terminated or an alarm message is generated.
[0133] The initial in-degree can be denoted as in_degree, the queue to be processed can be denoted as Q, and the initial configuration sequence can be recorded as S. At the beginning, the initial configuration sequence is empty.
[0134] See Figure 7 ,node The number of directed edges is 1 ( → ), initial in-degree in_degree( )=1; node The number of directed edges is 1 ( → ), initial in-degree in_degree( )=1; node The number of directed edges is 1 ( → ), initial in-degree in_degree( )=1; node The number of directed edges is 0, and the initial in-degree is in_degree( =0. Initially, the queue to be processed, Q = { The initial configuration sequence S is empty.
[0135] by Figure 7 For example, extract the first node from Q. Add S, at this point, S = [ The first directed edge is The second node is , After decreasing the in-degree by 1 to become 0, add Q. At this point, Q = { }, completing the first loop.
[0136] Extract the first node from Q. Add S, at this point, S = [ , The first directed edge is and The second node is and .Will and After the in-degree is reduced by 1, and If the in-degrees of all elements become 0, then... and Add it to Q, at this point, Q = { , }, completing the second loop.
[0137] Take the first node from Q in sequence. , Add S, at this point, S = [ , , , Q is empty. The sequence is validated: |S|=4=m (total number of nodes), the topological sorting is valid, and the target configuration sequence is obtained. =[ , , , ].
[0138] S403. Construct a bi-objective optimization function, which is the weighted sum of the expected total execution time and the standard deviation of the expected resource utilization rate during the execution process.
[0139] The bi-objective optimization function can be expressed as:
[0140] Formula (2)
[0141] Where T(S) is the expected total execution time of the target configuration sequence, in seconds. The standard deviation of resource utilization during the expected execution process. The weights are 1, and their values can be flexibly set according to actual needs, for example... .
[0142] S404. Based on the bi-objective optimization function, under the premise of satisfying the dependency constraints, the objective configuration sequence is iteratively optimized to obtain the objective configuration scheme.
[0143] Optionally, an improved genetic algorithm can be used to iteratively optimize the target configuration sequence to obtain the target configuration scheme, including: encoding the target configuration sequence into a chromosome; randomly generating at least two legal sequences based on the target configuration sequence, wherein the legal sequences satisfy dependency constraints; for each legal sequence, constructing a fitness function according to the bi-objective optimization function and calculating the fitness; using a roulette wheel selection method to perform a selection operation on the legal sequences, wherein the selection operation is used to allocate selection probabilities according to the fitness proportion of the legal sequences to select the parent sequence for breeding the next generation; performing a single-point crossover operation on the parent sequence to obtain the offspring sequence, wherein the crossover operation satisfies the cascading dependency constraint between configuration items; performing a mutation operation on the offspring sequence, wherein the mutation operation is used to randomly swap the positions of two undependent configuration item nodes in the sequence; repeating the selection operation, crossover operation and mutation operation in sequence until the preset number of iterations and / or fitness convergence are reached, and determining the sequence with the highest fitness after convergence as the target configuration scheme.
[0144] refer to Figure 7 The example provided above details the process:
[0145] (1) Encoding: Encode the configuration sequence into a chromosome, such as =[ , , , [4,1,2,3]); (2) Initial population: Based on this, 19 legal sequences are randomly generated (out of a total of 20, ensuring that all satisfy the dependency constraints); (3) Selection: The roulette wheel selection method is adopted, and the fitness function is 1 / F(S). The smaller F(S) is, the higher the fitness; (4) Crossover: Single-point crossover is adopted to ensure that the dependency is still satisfied after crossover, such as v1 must be in v2; (5) Mutation: Randomly swap the positions of two nodes with no dependency relationship; (6) Iteration: Repeat selection, crossover, and mutation until the iteration reaches the preset number (e.g., 50 times) or the fitness converges, output the optimal sequence, and determine the optimal sequence as the target configuration scheme.
[0146] For example, for the target configuration sequence =[ , , , The time consumed by each node is as follows: =2s, =3s, =5s, =4s, resource utilization rate are respectively =20%, =30%, =50%, =45%. F( =0.6×(2+3+5+4)+0.4×σ(20%,30%,50%,45%)=0.6×14+0.4×14.7=14.28; After crossover mutation, the candidate sequence S1 is obtained. , , , After the exchange, the resource fluctuation (i.e., the standard deviation of resource utilization) drops to 12%, then F(S1) = 0.6 × 14 + 0.4 × 12 = 8.4 + 4.8 = 13.2 < 14.28, which is optimal. Therefore, S1 is determined as the target configuration scheme.
[0147] In the above method, the target configuration sequence is encoded as a chromosome to generate a legal initial population under the premise of satisfying dependency constraints. A fitness function is constructed based on a dual-objective optimization function that takes into account both the total configuration time and resource stability. The parent sequence is selected by roulette wheel selection. A reasonable optimization space is introduced through single-point crossover and directed mutation that meet dependency constraints. The optimal configuration sequence is obtained through multiple rounds of iteration. This method avoids the failure risk caused by disordered configuration and effectively balances configuration efficiency and resource stability, thereby improving the overall efficiency, consistency and reliability of BIOS configuration in large-scale server clusters.
[0148] Optionally, after determining the target configuration scheme of the basic input / output system of the target server, the method further includes: writing configuration items to the target server sequentially according to the target configuration scheme, and ensuring that the corresponding constraint items have been configured according to the constraint conditions before writing the constraint items; after writing, extracting the current basic input / output system configuration and comparing and verifying it item by item with the standardized configuration set; storing the verified cascading relationships and successfully reused cross-model experience records to the experience database, and updating the original experience confidence of the corresponding experience records; updating the general template set and configuration item dictionary according to the error text and configuration items involved in the configuration process; and adjusting the weight coefficients of the expected total execution time and resource utilization rate according to the total writing time and resource consumption data.
[0149] Iterate through the target configuration scheme and write the configuration items to the target server in sequence. When writing constraint item Y, ensure that its value is Z before writing the constrained item X. After each configuration item is written, update the configuration status to success.
[0150] When writing configuration items to the target server, if a write failure occurs due to a non-dependency issue, a retry mechanism is triggered. If the write fails after a preset number of retries, a failure alarm is generated. Non-dependency failures include network jitter, and the preset number of retries is, for example, 3. If the write fails after 3 retries, a failure alarm is generated. This method reduces manual intervention and improves the success rate of configuration.
[0151] Optionally, configuration items requiring restart can be aggregated and a unified restart operation performed to write the necessary configuration items back to the system. By performing a unified restart operation, frequent power on / off cycles can be avoided, reducing server downtime.
[0152] After copying, the entire current BIOS configuration is extracted via the target server interface, and the system automatically checks for missing configuration items or inconsistent values. This method improves configuration accuracy and auditing efficiency.
[0153] The verified cascading relationships and successful cross-model migration experiences during this replication process will be stored in the experience database in the format of "composite search key, core cascading relationship, and metadata auxiliary field", and the confidence level of the original experience will be updated.
[0154] Add the new models or configuration items involved in this case to the configuration item dictionary, and add the core templates corresponding to the new error texts to the general template set.
[0155] Based on the total time and resource consumption data of this replication, the weights in the dynamic bi-objective optimization function were adjusted. This will improve the effectiveness of subsequent optimizations.
[0156] Optionally, during method execution, the entire process of configuration execution and changes in running status can be recorded to generate an immutable audit log, supporting subsequent business needs such as compliance verification, fault tracing, responsibility definition, and security auditing.
[0157] The basic input / output system configuration method provided in this application collects data on the basic input / output system configuration items of the source server, generates a standardized configuration template, obtains target error text by combining the initial configuration of target servers of different models and / or different architectures, extracts the cascading dependencies between configuration items through standardized processing, and then determines the optimal configuration scheme that satisfies the dependency constraints. This method can break down the adaptation barriers of different models and architectures of servers, realize the generalization and automation of the configuration process, and improve the efficiency of large-scale server cluster configuration.
[0158] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods according to the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method.
[0159] Figure 8 A schematic diagram of the basic input / output system configuration device provided in the embodiments of this application. (See attached diagram.) Figure 8 As shown, embodiments of this application also provide a Basic Input / Output System (BIOS) configuration device 20, comprising: an acquisition module 21, configured to acquire configuration items of the BIOS of a source server and generate a standardized configuration set; a first processing module 22, configured to perform initial configuration on the BIOS of a target server according to the standardized configuration set to obtain target error text, wherein the target server is a server of a different model and / or different architecture than the source server; a second processing module 23, configured to perform standardized processing on the target error text to obtain a cascading relationship set, wherein the standardized processing is used to map error texts of servers of different models and / or different architectures to a unified configuration item relationship representation, and the cascading relationship set is used to indicate the dependency relationship between each configuration item; and a determination module 24, configured to determine the target configuration scheme of the BIOS of the target server according to the cascading relationship set.
[0160] In one possible implementation, the acquisition module 21 is specifically used to: extract at least one type of configuration item and its corresponding value from the source server by calling the basic input / output system configuration query interface through the standardized server management interface, thereby obtaining an initial configuration set, wherein the type includes at least one of the following: startup type, security type, power consumption type and memory type; filter the read-only configuration items in the initial configuration set, and mark the writable range of the writable configuration items to obtain a standardized configuration set.
[0161] In one possible implementation, the first processing module 22 is specifically used for: traversing the configuration items in the standardized configuration set and sequentially sending write requests to the target server in a random order; when the write is successful, in response to the write success information returned by the target server, updating the configuration status of the corresponding configuration item to configuration success; when the write fails, in response to the write failure information returned by the target server, updating the configuration status of the corresponding configuration item to configuration failure, obtaining error information, the error information including at least one of the following: error code, error description, timestamp, and current configuration item name; constructing the correspondence between error information and configuration items to obtain initial error text; and performing noise reduction processing on the initial error text to obtain target error text, the noise reduction processing being used to filter invalid characters in the initial error text.
[0162] In one possible implementation, the second processing module 23 is specifically used to: construct a general template set based on historical error texts when the length of the target error text is greater than or equal to a first threshold; the general template set is used to indicate the configuration item constraint relationships of servers of different models and / or different architectures; calculate the first similarity between the word segments in the target error text and the word segments in the general template set; when any first similarity is greater than or equal to a second threshold, determine the general template with the highest first similarity in the general template set as the target template; calculate the second similarity between the word segments in the configuration item dictionary and the word segments in the target error text; determine the word segment with the highest second similarity in the configuration item dictionary as the target word segment; and fill the target template according to the target word segment to obtain a cascading relationship set.
[0163] In one possible implementation, the second processing module 23 is further configured to: obtain historical error texts; cluster the historical error texts according to the server model and / or configuration item type to generate at least one cluster; segment the text in the cluster and determine the weight of each segment; identify the segments with weights greater than a third threshold as core feature words; and construct a general template from the core feature words according to the basic syntactic structure to obtain a general template set.
[0164] In one possible implementation, the second processing module 23 is further configured to: construct search keywords based on the target error text when the length of the target error text is less than a first threshold and / or the first similarity is less than a second threshold; determine initial valid records in the experience base based on the search keywords, wherein the experience base stores historical configuration experience of different server models and corresponding original experience confidence levels, and the initial valid records are cross-model experience records whose constraint relationship type is consistent with the current scenario and whose configuration item semantic vector similarity is greater than or equal to a fourth threshold; evaluate the initial valid records based on the migration confidence level to obtain target valid records; and determine a cascading relationship set based on the target valid records.
[0165] In one possible implementation, the second processing module 23 is further configured to: obtain the original experience confidence level of the initial valid record from the experience base, the original experience confidence level being used to characterize the credibility of the initial valid record in the historical reuse process; obtain the configuration item type weight based on the degree of association between the configuration items in the initial valid record and the configuration items corresponding to the target error text in terms of type; determine the cross-model migration weight based on the compatibility between the server corresponding to the initial valid record and the target server in terms of model; calculate the migration confidence level of the initial valid record based on the original experience confidence level, the configuration item type weight, and the cross-model migration weight; and determine the initial valid record with a migration confidence level greater than or equal to the fifth threshold as the target valid record.
[0166] In one possible implementation, the determining module 24 is specifically used to: construct a cascading dependency graph using configuration items in the standardized configuration set as nodes and the directions of constraint items pointing to constrained items in the cascading relationship set as directed edges; perform topological sorting on the nodes in the cascading dependency graph to generate a target configuration sequence; construct a bi-objective optimization function, which is the weighted sum of the standard deviation of the expected total execution time and the expected resource utilization rate during execution; and iteratively optimize the target configuration sequence according to the bi-objective optimization function, under the premise of satisfying dependency constraints, to obtain the target configuration scheme, wherein the dependency constraints are the dependency relationships between nodes indicated in the cascading dependency graph.
[0167] In one possible implementation, the determining module 24 is further configured to: traverse the directed edges in the cascading dependency graph, count the number of directed edges that each node has as a pointed-to node, and obtain the initial in-degree of the node; add nodes with an initial in-degree of zero to the processing queue; and repeatedly execute the following process until the processing queue is empty: take a first node from the processing queue and add the first node to the initial configuration sequence; traverse the first directed edge starting from the first node and decrement the current in-degree of the second node pointed to by the first directed edge by one; if the current in-degree of the second node becomes zero after decrementing one, then add the second node as the first node to the processing queue; when the processing queue is empty, if the number of nodes added to the initial configuration sequence is equal to the total number of nodes in the cascading dependency graph, then the initial configuration sequence is determined to be valid and the initial configuration sequence is determined to be the target configuration sequence; otherwise, a circular dependency is determined and the configuration is terminated or an alarm message is generated.
[0168] In one possible implementation, the determining module 24 is further configured to: encode the target configuration sequence as a chromosome; randomly generate at least two legal sequences based on the target configuration sequence, the legal sequences satisfying dependency constraints; for each legal sequence, construct a fitness function according to the bi-objective optimization function and calculate the fitness; use a roulette wheel selection method to perform a selection operation on the legal sequences, wherein the selection operation is used to allocate selection probabilities according to the fitness proportion of the legal sequences to select parent sequences for breeding the next generation; perform a single-point crossover operation on the parent sequences to obtain the offspring sequences, wherein the crossover operation satisfies the cascading dependency constraints between configuration items; perform a mutation operation on the offspring sequences, the mutation operation being used to randomly swap the positions of two undependent configuration item nodes in the sequence; repeat the selection operation, crossover operation, and mutation operation in sequence until a preset number of iterations and / or fitness convergence is reached, and determine the sequence with the highest fitness after convergence as the target configuration scheme.
[0169] In one possible implementation, the basic input / output system configuration device 20 is further configured to: sequentially write configuration items to the target server according to the target configuration scheme, and ensure that the corresponding constraint items have been configured according to the constraint conditions before writing the constrained items; after writing, extract the current basic input / output system configuration and compare and verify it item by item with the standardized configuration set; store the verified cascading relationships and successfully reused cross-model experience records to the experience database, and update the original experience confidence of the corresponding experience records; update the general template set and configuration item dictionary according to the error text and configuration items involved in the configuration process; and adjust the weight coefficients of the expected total execution time and resource utilization rate according to the total writing time and resource consumption data.
[0170] In one possible implementation, the basic input / output system configuration device 20 is further configured to: trigger a retry mechanism when a write failure occurs due to a non-dependency issue; generate a failure alarm when the write still fails after a preset number of retries; aggregate configuration items that need to be restarted; perform a unified restart operation; and complete the writing of configuration items that need to be restarted.
[0171] For a description of the features in the embodiment corresponding to the Basic Input / Output System Configuration Device, please refer to the relevant description in the embodiment corresponding to the Basic Input / Output System Configuration Method, which will not be repeated here.
[0172] Figure 9 A schematic diagram of the structure of the electronic device provided in this application. Figure 9 As shown, the electronic device 90 provided in this embodiment includes at least one processor 901 and a memory 902. Optionally, the electronic device 90 further includes a communication component 903. The processor 901, memory 902, and communication component 903 are connected via a bus.
[0173] In the specific implementation process, at least one processor 901 executes computer execution instructions stored in memory 902, causing at least one processor 901 to execute the above-described basic input / output system configuration method embodiment.
[0174] The specific implementation process of processor 901 can be found in the above method embodiments, and its implementation principle and technical effect are similar. It will not be repeated here.
[0175] In the above embodiments, it should be understood that the processor can be a Central Processing Unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), etc. The general-purpose processor can be a microprocessor or any conventional processor. The steps of the method disclosed in the application can be directly manifested as being executed by a hardware processor, or executed by a combination of hardware and software modules within the processor.
[0176] The memory may include random access memory (RAM) and may also include non-volatile memory (NVM), such as at least one disk storage device.
[0177] The bus can be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, or an Extended Industry Standard Architecture (EISA) bus, etc. Buses can be categorized as address buses, data buses, control buses, etc. For ease of illustration, the buses shown in the accompanying drawings are not limited to a single bus or a single type of bus.
[0178] Embodiments of this application also provide a computer-readable storage medium storing a computer program, wherein the computer program is configured to execute the steps in any of the above embodiments of the basic input / output system configuration method when run.
[0179] In one exemplary embodiment, the aforementioned computer-readable storage medium may include, but is not limited to, various media capable of storing computer programs, such as a USB flash drive, read-only memory (ROM), random access memory (RAM), portable hard disk, magnetic disk, or optical disk.
[0180] Embodiments of this application also provide a computer program product, which includes a computer program that, when executed by a processor, implements the steps in any of the above embodiments of the basic input / output system configuration method.
[0181] Embodiments of this application also provide another computer program product, including a non-volatile computer-readable storage medium storing a computer program that, when executed by a processor, implements the steps in any of the above-described basic input / output system configuration method embodiments.
[0182] Any of the components, modules, units, parts, methods, and operations described herein can be implemented using software, firmware, hardware (e.g., fixed logic circuitry), manual processing, or any combination thereof. Alternatively or additionally, any functionality described herein can be executed at least in part by one or more hardware logic components, such as, but not limited to, a central processing unit (CPU), a field-programmable gate array (FPGA), an application-specific integrated circuit (ASIC), an application-specific standard product (ASSP), a system-on-a-chip (SoC), a complex programmable logic device (CPLD), a microcontroller unit (MCU), etc. The terms "system," "computing device," or "apparatus" as used herein encompass various means, devices, and machines for processing data, including, for example, one or more programmable processors, computers, SoCs, or combinations thereof. The apparatus may also include code that creates an execution environment for the computer program in question, such as code constituting processor firmware, a protocol stack, a database management system, an operating system, a cross-platform runtime environment, a virtual machine, or a combination thereof. The aforementioned computer program (also known as a program, software, software application, app, script, or code) can be written in any form of programming language, including compiled or interpreted languages, declarative or procedural languages, and can be deployed in any form, including as a standalone program or as a module, component, subroutine, object, or other unit suitable for a computing environment.
[0183] 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.
[0184] The foregoing has provided a detailed description of a basic input / output system configuration method and electronic device provided in this application. Specific examples have been used to illustrate the principles and implementation methods of this application. The descriptions of the embodiments above are only intended to help understand the method and core ideas of this application. It should be noted that those skilled in the art can make various improvements and modifications to this application without departing from its principles, and these improvements and modifications also fall within the protection scope of the claims of this application.
Claims
1. A basic input / output system configuration method characterized by comprising: include: Obtain the configuration items of the source server's basic input / output system and generate a standardized configuration set; The basic input / output system of the target server is initially configured according to the standardized configuration set to obtain the target error text. The target server is a server of a different model and / or different architecture than the source server. The target error text is standardized to obtain a cascading relationship set. The standardization process is used to map the error texts of servers of different models and / or different architectures into a unified configuration item relationship representation. The cascading relationship set is used to indicate the dependency relationship between each configuration item. Based on the set of cascading relationships, the target configuration scheme of the basic input / output system of the target server is determined.
2. The basic input / output system configuration method according to claim 1, wherein, The process involves obtaining the configuration items of the source server's basic input / output system and generating a standardized configuration set, including: By calling the Basic Input / Output System Configuration Query Interface through the standardized server management interface, at least one type of configuration item and its corresponding value of the source server are extracted to obtain an initial configuration set, wherein the type includes at least one of the following: startup type, security type, power consumption type and memory type; The read-only configuration items in the initial configuration set are filtered, and the writable range of the writable configuration items is marked to obtain the standardized configuration set.
3. The basic input / output system configuration method according to claim 1, characterized in that, The initial configuration of the target server's basic input / output system based on the standardized configuration set, resulting in the target error text, includes: Traverse the configuration items in the standardized configuration set and send write requests to the target server in random order; Upon successful writing, in response to the write success information returned by the target server, the configuration status of the corresponding configuration item is updated to successful configuration. When a write operation fails, in response to the write failure information returned by the target server, the configuration status of the corresponding configuration item is updated to configuration failure, and error information is obtained. The error information includes at least one of the following: error code, error description, timestamp, and current configuration item name. Construct the correspondence between the error messages and configuration items to obtain the initial error text; The initial error text is denoised to obtain the target error text. The denoising process is used to filter out invalid characters in the initial error text.
4. The basic input / output system configuration method according to claim 1, characterized in that, The standardization process of the target error text yields a cascading relationship set, including: When the length of the target error text is greater than or equal to a first threshold, a general template set is constructed based on historical error texts. The general template set is used to indicate the configuration item constraint relationships of servers of different models and / or different architectures. Calculate the first similarity between the word segments in the target error text and the word segments in the general template set; When the first similarity is greater than or equal to the second threshold, the general template with the highest first similarity in the general template set is determined as the target template; Calculate the second similarity between the word segments in the configuration item dictionary and the word segments in the target error text; The word segment with the highest similarity in the configuration item dictionary is determined as the target word segment. The target template is filled with the target word to obtain the cascading relationship set.
5. The basic input / output system configuration method according to claim 4, characterized in that, The process of constructing a general template set based on historical error messages includes: Retrieve historical error texts; The historical error texts are clustered according to server model and / or configuration item type to generate at least one cluster; The text in the cluster is segmented into words, and the weight of each segment is determined; Words with weights greater than the third threshold are identified as core feature words; Based on the basic syntactic structure, the core feature words are constructed into general templates to obtain the general template set.
6. The basic input / output system configuration method according to claim 4, characterized in that, The method further includes: When the length of the target error text is less than the first threshold, and / or the first similarity is less than the second threshold, search keywords are constructed based on the target error text; The initial valid records are determined in the experience base based on the search keywords. The experience base stores historical configuration experience of different server models and the corresponding original experience confidence. The initial valid records are cross-model experience records with constraint relationship type consistent with the current scenario and configuration item semantic vector similarity greater than or equal to the fourth threshold. The initial valid records are evaluated based on migration confidence to obtain the target valid records; The cascading relationship set is determined based on the target valid records.
7. The basic input / output system configuration method according to claim 6, characterized in that, The evaluation of the initial valid records based on migration confidence to obtain the target valid records includes: The original experience confidence level of the initial valid record is obtained from the experience base, and the original experience confidence level is used to characterize the credibility of the initial valid record in the historical reuse process; Based on the degree of correlation between the configuration items in the initial valid records and the configuration items corresponding to the target error text in terms of type, the configuration item type weight is obtained; Based on the compatibility of the server corresponding to the initial valid record with the target server in terms of model, the cross-model migration weight is determined; The migration confidence of the initial valid record is calculated based on the original experience confidence, the configuration item type weight, and the cross-model migration weight. The initial valid records with a migration confidence level greater than or equal to the fifth threshold are identified as the target valid records.
8. The basic input / output system configuration method according to claim 1, characterized in that, The step of determining the target configuration scheme of the basic input / output system of the target server based on the cascading relationship set includes: Using the configuration items in the standardized configuration set as nodes and the directions from the constraint items to the constrained items in the cascading relationship set as directed edges, a cascading dependency graph is constructed. Perform topological sorting on the nodes in the cascaded dependency graph to generate a target configuration sequence; Construct a bi-objective optimization function, which is the weighted sum of the expected total execution time and the standard deviation of the expected resource utilization rate during the execution process; Based on the bi-objective optimization function, the target configuration sequence is iteratively optimized under the premise of satisfying dependency constraints to obtain the target configuration scheme, wherein the dependency constraints are the dependency relationships between nodes indicated in the cascaded dependency graph.
9. The basic input / output system configuration method according to claim 8, characterized in that, The step of performing topological sorting on the nodes in the cascading dependency graph to generate the target configuration sequence includes: Traverse the directed edges in the cascaded dependency graph, count the number of directed edges that each node has as a pointed node, and obtain the initial in-degree of the node. Add the nodes with an initial in-degree of zero to the queue to be processed; The following process is executed repeatedly until the queue to be processed is empty: a first node is taken out from the queue to be processed and added to the initial configuration sequence; the first directed edge starting from the first node is traversed and the current in-degree of the second node pointed to by the first directed edge is decremented by one; if the current in-degree of the second node becomes zero after decrementing by one, the second node is added to the queue to be processed as the first node. When the queue to be processed is empty, if the number of nodes added to the initial configuration sequence is equal to the total number of nodes in the cascading dependency graph, the initial configuration sequence is determined to be valid and is identified as the target configuration sequence; otherwise, a circular dependency is determined and the configuration is terminated or an alarm message is generated.
10. The basic input / output system configuration method according to claim 8, characterized in that, The step of iteratively optimizing the target configuration sequence according to the bi-objective optimization function, under the premise of satisfying dependency constraints, to obtain the target configuration scheme includes: Encode the target configuration sequence into a chromosome; Based on the target configuration sequence, at least two valid sequences are randomly generated, and the valid sequences satisfy dependency constraints. For each of the legal sequences, a fitness function is constructed based on the bi-objective optimization function, and the fitness is calculated; The roulette wheel selection method is used to perform a selection operation on the legal sequences, wherein the selection operation is used to allocate selection probabilities according to the fitness ratio of the legal sequences to select parent sequences for reproducing the next generation; Perform a single-point crossover operation on the parent sequence to obtain the child sequence, wherein the crossover operation conforms to the cascading dependency constraint between configuration items; A mutation operation is performed on the offspring sequence, wherein the mutation operation is used to randomly swap the positions of two unrelated configuration item nodes in the sequence; Repeat the selection operation, the crossover operation, and the mutation operation in sequence until a preset number of iterations and / or fitness convergence is reached. The sequence with the highest fitness after convergence is determined as the target configuration scheme.
11. The basic input / output system configuration method according to claim 1, characterized in that, After determining the target configuration scheme of the basic input / output system of the target server, the method further includes: According to the target configuration scheme, configuration items are written to the target server in sequence, and before writing the constrained items, it is ensured that the corresponding constraint items have been configured according to the constraint conditions. After writing is complete, the current basic input / output system configuration is extracted and compared and verified item by item with the standardized configuration set; Store the verified cascading relationships and successfully reused cross-model experience records to the experience database, and update the original experience confidence level of the corresponding experience records. Update the general template set and configuration item dictionary based on the error texts and configuration items involved in the configuration process; Based on the total execution time and resource usage data, adjust the weighting coefficients of the expected total execution time and resource usage rate.
12. The basic input / output system configuration method according to claim 11, characterized in that, The step of writing configuration items to the target server sequentially according to the target configuration scheme includes: When a write failure occurs due to a non-dependency issue, a retry mechanism is triggered. If the write still fails after a preset number of retries, a failure alarm is generated. The configuration items that need to be restarted are aggregated, and a unified restart operation is performed to complete the writing of the configuration items that need to be restarted.
13. An electronic device, characterized in that, include: Memory, used to store computer programs; A processor, configured to implement the steps of the basic input / output system configuration method as described in any one of claims 1 to 12 when executing the computer program.
14. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program, wherein when the computer program is executed by a processor, it implements the steps of the basic input / output system configuration method as described in any one of claims 1 to 12.
15. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the steps of the basic input / output system configuration method as described in any one of claims 1 to 12.