An adaptation method, apparatus, device, and medium

By using configuration files and cloud server management on the server, the problem of long adaptation processes for bus interface devices in the boot system is solved, achieving efficient and flexible device adaptation and maintenance.

CN119576423BActive Publication Date: 2026-06-02INSPUR SUZHOU INTELLIGENT TECH CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
INSPUR SUZHOU INTELLIGENT TECH CO LTD
Filing Date
2024-11-29
Publication Date
2026-06-02

AI Technical Summary

Technical Problem

When adapting newly added bus interface devices to the server's boot system, existing methods require recompiling and re-releasing the boot system version, resulting in a long adaptation process, low efficiency, and difficult maintenance.

Method used

By obtaining server information, configuration files are retrieved from a pre-established adaptation file database and used to adapt bus interface devices, avoiding modifications to the boot system code. Cloud servers are used to manage and verify the configuration files, ensuring their integrity and consistency.

Benefits of technology

It shortens the adaptation process, improves adaptation efficiency, reduces reliance on boot system version upgrades, provides better maintainability and flexibility, and achieves efficient device adaptation for different models.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119576423B_ABST
    Figure CN119576423B_ABST
Patent Text Reader

Abstract

The application discloses an adaptation method and device, equipment and medium, and relates to the technical field of computers. Compared with the adaptation mode of adding adaptation information of a bus interface device in boot system code, the boot system of the server in the method provided by the application realizes adaptation of the bus interface device by using information of a configuration file, the code of the boot system is not modified, that is, the device adaptation and the code of the boot system are decoupled, so that the adaptation no longer depends on modification of the boot system code, but adaptation information is provided by the configuration file, and the boot system only needs to adapt the bus interface device according to the information of the configuration file. Since the period of file modification is less than the period of boot system version upgrade, the adaptation process is shortened, and the adaptation efficiency is improved. Compared with the upgrade of the boot system itself, the file can be flexibly adjusted, the transmission process from the research and development end to the customer group is greatly reduced, and better maintainability is provided.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of computer technology, and in particular to an adaptation method, apparatus, device, and medium. Background Technology

[0002] Current server boot systems (such as Basic Input / Output System, BIOS) often require the adaptation of device asset information and resource allocation for newly added bus interface devices (such as devices compliant with Peripheral Component Interconnect Express, PCIE) before they can be used on the server.

[0003] The adaptation process for related bus interface devices typically involves adding adaptation information to the boot system code to adapt the newly added bus interface devices to meet the server's requirements. However, this method creates a strong binding between the adaptation of new devices and the boot system code. When a new device is added, it often requires recompiling the boot system version and redistributing it. Since boot system version upgrades are usually quite lengthy, adding adaptation information to the boot system code results in a lengthy adaptation process and low efficiency.

[0004] Therefore, improving the efficiency of bus interface device adaptation is a technical problem that urgently needs to be solved by those in this field. Summary of the Invention

[0005] The purpose of this invention is to provide an adaptation method, apparatus, device, and medium to solve the problems of long adaptation process and low adaptation efficiency that exist in the method of adding bus interface device adaptation information to the boot system code for adaptation.

[0006] To solve the above-mentioned technical problems, the present invention provides an adaptation method, comprising:

[0007] Obtain information about the current server of the bus interface device to be adapted;

[0008] Based on the information of the current server, the current configuration file corresponding to the current server is obtained from the pre-established adaptation file database;

[0009] Store the current configuration file on the current server;

[0010] Control the restart of the current server so that the boot system of the current server can adapt to the bus interface device according to the information in the current configuration file.

[0011] On the one hand, the information in the configuration file corresponding to the server is stored in a preset format; the information in the configuration file corresponding to the server includes at least the information of the server and the adaptation list information corresponding to the server; wherein, the adaptation list information includes at least the number of bus interface devices, the adaptation information of each bus interface device, and information indicating the end of the adaptation information.

[0012] On the other hand, the adaptation file database is located in a cloud server; the cloud server establishes the adaptation file database by:

[0013] Receive and parse the server configuration file sent by the host.

[0014] The adaptation file database is established based on the received configuration file, and the server information obtained after parsing the configuration file is used as the index of the adaptation file database.

[0015] The step of retrieving the current configuration file corresponding to the current server from the pre-established adaptation file database based on the information of the current server includes:

[0016] The current configuration file corresponding to the current server is obtained from the adaptation file database based on the index represented by the information of the current server.

[0017] On the other hand, the information in the configuration file also includes key information; the information in the adaptation list information is stored in the following order: the number of bus interface devices, the adaptation information of each bus interface device, and information indicating the end of the adaptation information.

[0018] The process of sending the configuration file corresponding to the server from the host to the cloud server includes:

[0019] The host loads and parses at least one configuration file corresponding to a server.

[0020] Verify the key information in the configuration file and obtain the verification result;

[0021] If the verification result is detected as verification failure, then return to the step of verifying the key information of the configuration file and obtaining the verification result;

[0022] If the verification result is detected as successful, then the current file format of the configuration file is obtained;

[0023] If the current file format is found to be the same as the preset format, the number of bus interface devices in the configuration file is obtained; wherein, the number of bus interface devices in the configuration file is determined by the number of bus interface devices in the adaptation list information, and / or by the number of bus interface devices corresponding to the adaptation information in the adaptation list information and the information indicating the end of the adaptation information;

[0024] Determine whether the number of bus interface devices in the configuration file is the same as the number of bus interface devices corresponding to the pre-stored server.

[0025] If not, return to the steps of verifying the key information in the configuration file and obtaining the verification result;

[0026] If so, a preview interface for the configuration file is provided on the host, and the configuration file is encrypted, packaged, and sent to the cloud server.

[0027] On the other hand, obtaining the current server information of the bus interface device to be adapted includes:

[0028] The cloud server obtains the request sent by the client and determines the information of the current server of the bus interface device to be adapted based on the content of the request; wherein the request sent by the client is sent by a server in the server cluster connected to the client;

[0029] The step of retrieving the current configuration file corresponding to the current server from the pre-established adaptation file database based on the information of the current server includes:

[0030] The cloud server retrieves the current configuration file corresponding to the current server from a pre-established adaptation file database based on the information of the current server, and sends the current configuration file corresponding to the current server to the client so that the client can retrieve the current configuration file corresponding to the current server.

[0031] Before storing the current configuration file in the current server, the method further includes:

[0032] The client sends the current configuration file to the current server of the corresponding bus interface device to be adapted.

[0033] On the other hand, the host sending the configuration file corresponding to the server to the cloud server includes:

[0034] The host sends at least one version of the configuration file corresponding to the server to the cloud server;

[0035] After obtaining the request sent by the client through the cloud server and determining the information of the current server of the bus interface device to be adapted based on the content of the request, before retrieving the current configuration file corresponding to the current server from the pre-established adaptation file database based on the information of the current server in the cloud server, the method further includes:

[0036] In the cloud server, it is determined whether the current version of the current server's configuration file is lower than the version of the stored configuration file based on the content of the request;

[0037] If so, the current configuration file corresponding to the current server is obtained from the pre-established adaptation file database in the cloud server according to the information of the current server;

[0038] If not, the cloud server will send a message to the client indicating that the response request failed.

[0039] On the other hand, after the client sends the current configuration file to the current server of the corresponding bus interface device to be adapted, and before storing the current configuration file in the current server, the method further includes:

[0040] The current version of the configuration file is updated through the client and using the current configuration file of the current server;

[0041] From the moment the updated configuration file is detected, the client receives a notification message from the current server indicating whether the update was successful or failed within a preset time period.

[0042] Upon receiving a notification message indicating a successful update from the client, proceed to the step of storing the current configuration file on the current server;

[0043] If a prompt message indicating update failure is received through the client, the process returns to the step of updating the current version of the configuration file through the client and using the current configuration file of the current server.

[0044] To address the aforementioned technical problems, the present invention also provides an adapter, comprising:

[0045] The first acquisition module is used to acquire information about the current server of the bus interface device to be adapted.

[0046] The second acquisition module is used to acquire the current configuration file corresponding to the current server from a pre-established adaptation file database based on the information of the current server.

[0047] A storage module is used to store the current configuration file in the current server;

[0048] The control module is used to control the restart of the current server so that the boot system of the current server can adapt to the bus interface device according to the information in the current configuration file.

[0049] To address the aforementioned technical problems, the present invention also provides an adapter device, comprising:

[0050] Memory, used to store computer programs;

[0051] A processor for implementing the adaptation method described above when executing the computer program.

[0052] To address the aforementioned technical problems, the present invention also provides a computer-readable storage medium storing a computer program, which, when executed by a processor, implements the steps of the adaptation method described above.

[0053] The beneficial effects of this invention are as follows: Compared to adding adaptation information for bus interface devices to the boot system code and adapting to newly added bus interface devices, the method provided by this invention utilizes information from a configuration file to adapt the server's boot system to the bus interface devices without modifying the boot system code. This decouples device adaptation from the boot system code, so that adaptation no longer depends on modifications to the boot system code. Instead, the configuration file provides the adaptation information, and the boot system only needs to adapt the bus interface devices according to the information in the configuration file. Since the modification cycle of the file is shorter than the upgrade cycle of the boot system version, the adaptation process is shortened, and the adaptation efficiency is improved. Compared to upgrading the boot system itself, the file can be adjusted more flexibly, and the transmission process from the R&D end to the customer base is significantly reduced, providing better maintainability.

[0054] In addition, an adaptation file database is established through a cloud server, and during the process of establishing the adaptation file database, the server information is used as the index of the adaptation file database, so that when the current configuration file corresponding to the current server is obtained, the current configuration file corresponding to the current server can be quickly found based on the index.

[0055] The information in the configuration file is stored in a preset format, and includes at least server information, the server's corresponding adapter list information, and key information. The adapter list information includes at least the number of bus interface devices, the adapter information for each bus interface device, and information indicating the end of the adapter process. This allows the host to verify the configuration file based on the key information, file format, and number of bus interface devices before sending it to the cloud server, minimizing the possibility of information loss in the configuration file.

[0056] When obtaining information about the current server of the bus interface device to be adapted, the cloud server receives the request sent by the client and determines the information about the current server of the bus interface device to be adapted based on the content of the request. The request sent by the client is sent by the server in the server cluster connected to the client, which realizes the unified management of the server cluster by the client, as well as the unified sending of request configuration files to the cloud server by the client and receiving of configuration files sent by the cloud server.

[0057] After obtaining the request sent by the client through the cloud server and determining the current server information of the bus interface device to be adapted based on the request content, before retrieving the current configuration file corresponding to the current server from the pre-established adaptation file database based on the current server information, the cloud server checks whether the current version of the current server's configuration file is lower than the version of the stored configuration file based on the request content. That is, the configuration file version is verified. Only if the current version of the current server's configuration file is lower than the version of the stored configuration file will the current configuration file corresponding to the current server be retrieved from the adaptation file database and the adaptation file be updated, thus ensuring that the server's adaptation file can be upgraded successfully as much as possible.

[0058] Upon detecting an updated configuration file, the client receives a notification from the server within a preset timeframe, indicating whether the update was successful or failed. This allows the client to easily understand the update result. After a successful update, the current configuration file is stored on the server. This enables the server's boot system to adapt to the bus interface devices based on the latest version of the configuration file after a server restart, improving system stability and reliability.

[0059] In addition, the present invention also provides an adapter, an adapter device, and a computer-readable storage medium, which have the same or corresponding technical features as the aforementioned adapter method and have the same effects. Attached Figure Description

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

[0061] Figure 1 A flowchart of an adaptation method provided in an embodiment of the present invention;

[0062] Figure 2 A schematic diagram of the data structure of a server configuration file provided in an embodiment of the present invention;

[0063] Figure 3 A structural topology diagram of an adaptation system provided in an embodiment of the present invention;

[0064] Figure 4 This is an overall flowchart of an adaptation method provided in an embodiment of the present invention;

[0065] Figure 5 A structural diagram of an adapter device provided in another embodiment of the present invention. Detailed Implementation

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

[0067] The core of this invention is to provide an adaptation method, apparatus, device, and medium to solve the problems of long adaptation process and low adaptation efficiency that exist in the method of adding bus interface device adaptation information to the boot system code for adaptation.

[0068] Currently, server boot systems often require adaptation for newly added devices before they can be used on the server. This mainly includes device asset information and allocated resources. However, current adaptation methods embed this information into the boot system code, creating a strong bond with the boot system firmware. Adaptation requires updating the boot system, which leads to a lengthy adaptation process, low efficiency, and difficult code maintenance as the number of device models, devices, and bus interface devices increases. Therefore, this invention provides a new adaptation method.

[0069] To enable those skilled in the art to better understand the present invention, the present invention will be further described in detail below with reference to the accompanying drawings and specific embodiments. Figure 1 A flowchart of an adaptation method provided in an embodiment of the present invention is shown below. Figure 1 As shown, the method includes:

[0070] S10: Obtain information about the current server of the bus interface device to be adapted;

[0071] S11: Retrieve the current configuration file corresponding to the current server from the pre-established adaptation file database based on the information of the current server;

[0072] S12: Store the current configuration file on the current server;

[0073] S13: Control the restart of the current server so that the current server's boot system can adapt to the bus interface device based on the information in the current configuration file.

[0074] There are no restrictions on the current server for the bus interface device to be adapted; the specific requirements will be determined based on the actual situation. Server information must include at least the server platform information, server generation information, and server model information.

[0075] To improve adaptation efficiency, this embodiment of the invention directly performs adaptation based on the configuration file. The configuration file corresponding to the server includes at least server information and a corresponding adaptation list; the adaptation list includes at least the number of bus interface devices, adaptation information for each bus interface device, and information indicating the end of the adaptation process. To achieve unified management of configuration files for various servers, the information in the configuration files is stored according to a preset format. To improve the security of the configuration files, key information is also included. The specific storage format is not limited; for example, for any server's configuration file, the header can be the key information, followed by the server information and the corresponding adaptation list. Similarly, the information in the adaptation list is also stored in a specific format, such as the order of the information stored being the number of bus interface devices, the adaptation information for each bus interface device, and information indicating the end of the adaptation process.

[0076] The following is a detailed explanation of the contents of the configuration file (i.e., the adaptation information file). The configuration file header contains a verification key to confirm file security. The main information and data structure contained within the configuration file are as follows:

[0077] 1. Server platform information;

[0078] 2. Server generation information;

[0079] 3. Server model information (including customized models);

[0080] 4. Adaptation list information.

[0081] The server platform information structure consists of three bytes of character information. The detailed data structure and content correspondence are as follows:

[0082] The first byte contains server central processing unit (CPU) platform information, which is a single-byte character information: such as 'a' representing the first platform; 'b' representing the second platform; and 'c' representing the third platform.

[0083] The second byte contains server product platform information, which is a single-byte character information: such as A representing an Artificial Intelligence (AI) server; E representing an edge server; G representing a general-purpose server; S representing a storage server;

[0084] The third byte is supplementary information for the server product platform. It is a single-byte character information used to mark special server types under the same product line. Currently, it is a reserved byte.

[0085] The second part is server generation information, which is used in the file to mark the different server generation information areas under the same server product platform. It mainly consists of five-byte information, and the main correspondences are as follows:

[0086] The first byte contains server product generation information, which is a single-byte numeric value that can represent 0-255.

[0087] The second and third bytes contain information about different CPU types within the product generation. This is double-byte character information. Different generations of products may use the same generation but different CPUs. Therefore, in some cases, it is necessary to label the CPU information to distinguish them. An example is shown below:

[0088] 1. If there is no special distinction for this generation, the data content is empty, i.e., hexadecimal 0x00;

[0089] 2. If different CPU types exist, the information will be a non-empty single character, and the information will vary depending on the generation of the platform.

[0090] The last two bytes are reserved information and are empty by default.

[0091] The third part is the server model information, which serves as a classification of specific product models under the same generation and type of CPU. It consists of 7 bytes of character information, the last 6 bytes of which are product configuration information corresponding to the server model, and the last two bytes of which are customer customization information, supplementing the customer-customized model. If the information is empty, it is non-customized; if the string information exists, it is customized. This information corresponds to the customer identity (Identification, ID) in the server code and is a hexadecimal number.

[0092] The fourth part is the adapter list information, which is a variable-length list. Its main structure is as follows: a header containing length information (representing the number of bus interface devices), a body containing adapter information for multiple devices, and a tail containing a special adapter information structure indicating the end of the list.

[0093] The header information contains two-byte numeric information, which can be used to indicate the number of subsequent main body structures. If this part fails, it can still be identified by the special end field at the end of the table. It supports device adaptation information of 0-65535 devices.

[0094] The main structure primarily includes the following equipment asset information and equipment resource allocation information: Vendor ID, Device ID, Firmware Version (FW Version, where FW is short for Firmware), bandwidth allocation requirements, whether it is a multi-host system and the number of multiple devices, Memory-Mapped I / O (MMIO) resource requirements, Input / Output (IO) resource requirements, and Bus (BUS) resource requirements. All bytes are numeric. Vendor ID and Device ID are two bytes each, FW version is three bytes, one byte indicates whether it is a multi-host system and the number of multiple devices (one byte confirms multi-host status, seven bytes indicate the number of multiple devices), and one byte indicates bandwidth allocation. MMIO is four bytes of numeric information, while IO and BUS resource requirements are three bytes each, indicating the number of user-selected requirements in KB, supporting descriptions of resource requirements within 4TB and 16GB respectively.

[0095] The tail structure consists of 7 bytes of numeric information, corresponding to the Vendor ID, Device ID, and FW Version length. When the corresponding Vendor ID and Device ID are 0, and the FW Version is 3 bytes of hexadecimal 0xFF, it is considered the tail.

[0096] Developers fill in the required device information into the file according to the file structure. When a new device is added, the corresponding device information is maintained incrementally under the corresponding model.

[0097] The Vendor ID and Device ID are used to identify the specific device, and the FW Version is used to distinguish devices that need to be specially split according to the FW version. If it is 0, the version is not distinguished. Each byte corresponds to a segment of FW Version number. If it is FF, the version number can be any number.

[0098] For the Multi-host and Multi-device count bits, if the device is a multi-core device, it usually needs to be specially split and the specific number of multi-cores needs to be specified. Therefore, when the first bit of this segment is set, the last 7 bits representing the number of multi-cores will be read to determine how many devices need to be displayed.

[0099] Special split bits can be triggered by both FW Version and Multi-host enable. When enabled, the data segment is valid and can be used to determine whether to perform special bandwidth splitting on the device without relying on the original splitting logic.

[0100] MMIO, IO, and BUS resource requirements typically record the resource reservation status required by the device. When a device needs resource reservation, the corresponding resource bit is non-empty data. When the system detects data, it will make the corresponding resource reservation judgment for the device.

[0101] Figure 2 This is a schematic diagram of the data structure of a server configuration file provided in an embodiment of the present invention. The file content determines the space occupied by the key based on the selection of the encryption algorithm. Figure 2 The section within the dotted box at the top contains server platform, generation, and model information. The main body includes information on four compatible devices. The first device has a Vendor ID of 0x47, a Device ID of 0x32, a bandwidth split requirement of 4x4, a Server Version of 2.16.3, and 0x83 (1|0000011) which contains multiple devices, with a device count of 3. 10G of MMIO resources are reserved; there are no IO or BUS resource requirements.

[0102] Configuration files from various servers form an adaptation file database, enabling different servers (multiple platforms and models) to adapt to newly added bus interface devices. When configuring the current server using a configuration file, the corresponding current configuration file is retrieved from the pre-established adaptation file database based on the current server's information, and then stored on the current server. To prevent configuration file loss after a server restart, the configuration file can be stored on a storage device on the server's motherboard.

[0103] After the current server restarts, the server's boot system parses the configuration file and adjusts the corresponding adaptation strategy based on the list of compatible devices. For example, if a device is identified by its Vendor ID, Device ID, and FWVersion, the boot system adjusts the bandwidth allocation and reserved resource size for that device.

[0104] Compared to adding bus interface device adaptation information to the boot system code and adapting to newly added bus interface devices, the method provided in this embodiment utilizes configuration file information to adapt the server's boot system to the bus interface devices without modifying the boot system code. This decouples device adaptation from the boot system code, allowing adaptation to no longer depend on modifications to the boot system code. Instead, the configuration file provides the adaptation information, and the boot system only needs to adapt the bus interface devices according to the configuration file information. Since the file modification cycle is shorter than the boot system version upgrade cycle, the adaptation process is shortened, and adaptation efficiency is improved. Compared to upgrading the boot system itself, the file allows for more flexible adjustments and significantly reduces the transmission process from the development team to the customer base, providing better maintainability.

[0105] To achieve centralized management of configuration files, the adaptation file database is located on a cloud server during implementation. Establishing the adaptation file database on the cloud server includes:

[0106] Receive and parse the server configuration file sent by the host.

[0107] An adaptation file database is built based on the received configuration file, and the server information obtained after parsing the configuration file is used as the index of the adaptation file database.

[0108] The host can be a computer, etc. When retrieving the current configuration file corresponding to the current server, the current configuration file corresponding to the current server can be retrieved from the adaptation file database based on the index represented by the information of the current server. The host sends at least one version of the configuration file corresponding to the server to the cloud server, and correspondingly, at least one version of the configuration file corresponding to the server exists in the adaptation file database.

[0109] To prevent configuration file loss during the process of sending configuration files from the host to the cloud server, the host sends the following configuration files to the cloud server:

[0110] The host loads and parses the configuration file corresponding to at least one server.

[0111] Verify the key information in the configuration file and obtain the verification result;

[0112] If the verification result is detected as verification failure, the process returns to the step of verifying the key information in the configuration file and obtaining the verification result;

[0113] If the verification result is detected as successful, then obtain the current file format of the configuration file;

[0114] If the current file format is found to be the same as the preset format, obtain the number of bus interface devices in the configuration file;

[0115] Determine whether the number of bus interface devices in the configuration file is the same as the number of bus interface devices corresponding to the pre-stored server.

[0116] If not, return to the steps of verifying the key information in the configuration file and obtaining the verification result;

[0117] If so, a preview interface for the configuration file will be provided on the host, and the configuration file will be encrypted, packaged, and sent to the cloud server.

[0118] If the default format is key information, server information, number of bus interface devices, adaptation information for each bus interface device, and information indicating the end of the adaptation information, and the current file format is also key information, server information, number of bus interface devices, adaptation information for each bus interface device, and information indicating the end of the adaptation information, then the file format of the configuration file is correct. The number of bus interface devices in the configuration file is determined by the number of bus interface devices in the adaptation list information, and / or by the number of bus interface devices corresponding to the adaptation information in the adaptation list information and the information indicating the end of the adaptation information.

[0119] In the method provided in this embodiment, before the host sends the configuration file corresponding to the server to the cloud server, it verifies the configuration file based on key information, file format, and the number of bus interface devices to minimize the loss of information in the configuration file. Furthermore, a preview interface for the configuration file is provided on the host, allowing users to easily view the content of the configuration file and also search for the server by entering information about the server to be searched to see if a configuration file for that server exists.

[0120] In practice, there may be multiple servers that need to be adapted to the bus interface device. To achieve unified management of these servers, the implementation involves obtaining information about the current server of the bus interface device to be adapted, including:

[0121] The cloud server obtains the request sent by the client and determines the information of the current server of the bus interface device to be adapted based on the content of the request; the request sent by the client is sent by the server in the server cluster connected to the client.

[0122] Based on the information of the current server, the current configuration file corresponding to the current server is retrieved from the pre-established adaptation file database, including:

[0123] In the cloud server, the current configuration file corresponding to the current server is obtained from the pre-established adaptation file database based on the information of the current server, and the current configuration file corresponding to the current server is sent to the client so that the client can obtain the current configuration file corresponding to the current server.

[0124] Before storing the current configuration file on the current server, the following is also included:

[0125] The client sends the current configuration file to the current server of the corresponding bus interface device to be adapted.

[0126] The client connects to the server cluster and manages the server cluster. The client can be a computer, mobile phone, etc. Figure 3 This is a structural topology diagram of an adaptation system provided in an embodiment of the present invention. For example... Figure 3 As shown, this adaptation system includes a server cluster, a client managing the server cluster, a host terminal, and a cloud server. The client, or target server, primarily implements the solution, handling functions such as receiving adaptation information, parsing the information, and implementing the adaptation solution. The host terminal manages the solution updates and uploads, including tasks such as previewing and uploading configuration files. The server terminal acts as the sole distribution channel, storing the configuration files uploaded by the host terminal. Once the client sends an update request and it is verified, the server sends the corresponding configuration update data.

[0127] To ensure that the configuration file corresponding to the server of the bus interface device to be adapted is the latest version, after obtaining the request sent by the client through the cloud server and determining the current server information of the bus interface device to be adapted based on the request content, before retrieving the current configuration file corresponding to the current server from the pre-established adaptation file database based on the current server information in the cloud server, the following steps are also included:

[0128] In the cloud server, determine whether the current version of the current server's configuration file is lower than the version of the stored configuration file based on the content of the request;

[0129] If so, the current configuration file corresponding to the current server is obtained from the pre-established adaptation file database based on the information of the current server in the cloud server;

[0130] If not, the cloud server will send a message to the client indicating that the response request failed.

[0131] If the current version of the configuration file on the current server is 1.0, and the version of the stored configuration file is also 1.0, then it is not necessary to retrieve the current configuration file corresponding to the current server from the adaptation file database. If the current version of the configuration file on the current server is 1.0, and the version of the stored configuration file is 2.0, then the current configuration file corresponding to the current server can be retrieved from the pre-established adaptation file database, and the version of the current server's configuration file can be upgraded using the configuration file stored on the cloud server.

[0132] In the method provided in this embodiment, the configuration file version is verified. Only if the current version of the current server's configuration file is lower than the version of the stored configuration file, the current configuration file corresponding to the current server is retrieved from the adaptation file database and the adaptation file is updated, thereby ensuring that the server's adaptation file can be upgraded successfully as much as possible.

[0133] After receiving the configuration file from the cloud server, the client, to ensure the integrity of the configuration file information and avoid its loss, parses the configuration file. If the configuration file format meets the preset format, the client obtains the number of bus interface devices recorded in the configuration file, as well as the number of bus interface devices corresponding to the adaptation information. The client then determines whether the number of bus interface devices recorded in the configuration file is the same as the number of bus interface devices corresponding to the adaptation information. If they are the same, the client updates the current version of the configuration file using the current configuration file of the current server. If not, the client returns to the cloud server to obtain the request sent by the client and determines the current server information of the bus interface devices to be adapted based on the content of the request.

[0134] If the configuration file format does not meet the preset format, the process returns to obtaining the request sent by the client through the cloud server and determining the current server information of the bus interface device to be adapted based on the content of the request.

[0135] Specifically, when it is detected whether the format of the configuration file meets the preset format, if no information indicating the end of the adaptation information is found in the configuration file, it means that the format of the configuration file does not meet the requirements.

[0136] In the method provided in this embodiment, after receiving the configuration file sent by the cloud server, the client parses the configuration file and verifies the format of the configuration file and the number of bus interface devices in the configuration file. If the verification fails, the client resends the request to the cloud server; if the verification passes, the client uses the received configuration file to update the server's configuration file, thus ensuring the integrity of the configuration file information as much as possible and avoiding the loss of configuration file information.

[0137] To understand the result of the server's configuration file update, after the client sends the current configuration file to the current server of the corresponding bus interface device to be adapted, and before storing the current configuration file in the current server, the following steps are also included:

[0138] Update the current version of the configuration file using the client and the current configuration file of the current server;

[0139] From the moment the updated configuration file is detected, the client receives a notification message from the current server indicating whether the update was successful or failed within a preset time period.

[0140] Upon receiving a notification message from the client indicating a successful update, proceed to the step of storing the current configuration file on the current server.

[0141] If a message indicating update failure is received via the client, the process returns to the steps of updating the current version of the configuration file via the client and using the current configuration file of the current server.

[0142] The preset duration is not limited and is determined based on the actual situation. In the method provided in this embodiment, after the client updates the current version of the configuration file using the current configuration file of the current server, the server sends the update result back to the client, making it convenient for the user to understand the update result of the configuration file.

[0143] To enable those skilled in the art to better understand the present invention, the present invention will be further described in detail below with reference to the accompanying drawings and specific embodiments. Figure 4 A flowchart illustrating an adaptation method provided in an embodiment of the present invention is shown below. Figure 4 As shown, the method includes:

[0144] S14: Load the configuration file on the host side;

[0145] S15: Verify the key;

[0146] S16: Determine whether the key verification is successful; if yes, proceed to step S17; if no, return to step S15.

[0147] S17: Determine whether the configuration file format and the number of devices meet the corresponding requirements; if not, return to step S15; if yes, proceed to step S18.

[0148] S18: Parse the configuration file to provide content preview and search location;

[0149] S19: Establish a connection between the host and the cloud server, upload the configuration file to the cloud server, unpack the file according to its contents, and build an index and corresponding database;

[0150] S20: The client sends a request to the cloud server;

[0151] S21: After the client sends a request, the cloud server verifies whether the requested version exists; if not, return to step S20; if yes, proceed to step S22.

[0152] S22: The cloud server sends the configuration file for the corresponding machine model to the client. The client detects the server that needs the configuration file to be upgraded and distributes the configuration file to the corresponding server. The server then updates the configuration file to the motherboard flash memory.

[0153] S23: Restart the server with the configuration file to be upgraded, apply the new configuration file, add the corresponding device support, and adjust the boot system adaptation strategy according to the configuration file.

[0154] In implementation, the adaptation method includes the following overall process:

[0155] 1) The host establishes communication with the server to verify whether there are any errors in the current file key and file structure content. After the verification is successful, the file will be loaded and parsed by the host, and the adaptation information for each model can be displayed and uploaded on the host.

[0156] 2) The host will package the file verification information and the main body of the file and upload them to the server. The server, based on the platform and device information in the main body, will then divide the data into hierarchical packages and save them. The main body contains the actual content, while platform and generation information serve as indexes for the sub-packages. This establishes a database of adaptation files for each platform and device. This database is built according to the versions uploaded by the host, and the client can request any uploaded version.

[0157] 3) When the client sends an update request, it will upload index information including platform and device model to the server. The server will find the corresponding adaptation file content of the index directory entry based on the information and will also distribute it according to the version requested by the client.

[0158] 4) After receiving the data file, the client will update the files of the selected servers within its network that need to be upgraded, thereby achieving batch upgrades. After a successful update, the server will send the update results back to the client, and the update results for each server can be displayed through the client management software.

[0159] 5) The server needs to be online to be updated. The data in the table needs to be written to the storage device on the motherboard through the software tools in the system. It is usually a separate Flash memory on the motherboard.

[0160] 6) After the update is complete, the Flash content will be parsed by the bootloader system upon the next server restart. The bootloader system will adjust the corresponding adaptation strategy based on the list of compatible devices. For example, if a corresponding device is identified through the Vendor ID, Device ID, and FWVersion, the bootloader system will adjust the bandwidth allocation and the corresponding reserved resource size for the detected device.

[0161] The present invention provides a solution for traditional servers that perform device adaptation within the boot system. This solution connects to cloud services to update data such as the topology of the bus interface device, bus interface device adaptation, and asset information adaptation (i.e., upgrading the adaptation content through cloud services). This decouples asset information configuration from the boot system, effectively solving the problem of device adaptation depending on the boot system version. By decoupling the two parts, new device adaptation can be completed without changing the boot system, achieving efficient updates or adjustments for different models or configurations. Moreover, compared to upgrading the boot system itself, the list file can be adjusted more flexibly and significantly reduces the transmission process from the R&D end to the customer base, providing better maintainability.

[0162] In the above embodiments, the adaptation method has been described in detail. The present invention also provides embodiments corresponding to the adaptation device and the adaptation equipment. It should be noted that the present invention describes the embodiments of the device portion from two perspectives: one based on functional modules, and the other based on hardware.

[0163] An embodiment of the present invention provides an adapter device, which, from the perspective of functional modules, includes:

[0164] The first acquisition module is used to acquire information about the current server of the bus interface device to be adapted.

[0165] The second acquisition module is used to obtain the current configuration file corresponding to the current server from a pre-established adaptation file database based on the information of the current server.

[0166] The storage module is used to store the current configuration file on the current server.

[0167] The control module is used to control the restart of the current server so that the current server's boot system can adapt to the bus interface device according to the information in the current configuration file.

[0168] In some embodiments, the adapter further includes:

[0169] The first sending module is used to send the current configuration file to the current server of the corresponding bus interface device to be adapted via the client.

[0170] In some embodiments, the adapter further includes:

[0171] The judgment module is used to determine whether the current version of the current configuration file on the cloud server is lower than the version of the stored configuration file based on the content of the request; if yes, the retrieval submodule is triggered; if no, the second sending module is triggered.

[0172] The acquisition submodule is used to retrieve the current configuration file corresponding to the current server from a pre-established adaptation file database based on the information of the current server in the cloud server;

[0173] The second sending module is used to send a prompt message indicating that the response request failed to the client via the cloud server.

[0174] In some embodiments, the adapter further includes:

[0175] The update module is used to update the current version of the configuration file via the client and using the current configuration file of the current server;

[0176] The receiving module is used to receive, within a preset time period after the detection of an updated configuration file, a prompt message sent by the current server indicating whether the update was successful or failed.

[0177] Upon receiving a notification message from the client indicating a successful update, the storage module is triggered.

[0178] Upon receiving a notification message from the client indicating update failure, the system returns to trigger the update module.

[0179] Since the embodiments of the apparatus and the embodiments of the method correspond to each other, please refer to the description of the embodiments of the method for the embodiments of the apparatus, which will not be repeated here.

[0180] Figure 5 This is a structural diagram of an adapter device provided in another embodiment of the present invention. This embodiment is based on a hardware perspective, such as... Figure 5 As shown, the compatible devices include:

[0181] Memory 20 is used to store computer programs;

[0182] The processor 21 is configured to implement the steps of the adaptation method as described in the above embodiments when executing a computer program.

[0183] The processor 21 may include one or more processing cores, such as a quad-core processor or an octa-core processor. The processor 21 may be implemented using at least one of the following hardware forms: Digital Signal Processor (DSP), Field-Programmable Gate Array (FPGA), or Programmable Logic Array (PLA). The processor 21 may also include a main processor and a coprocessor. The main processor, also known as the CPU, is used to process data in the wake-up state; the coprocessor is a low-power processor used to process data in the standby state. In some embodiments, the processor 21 may integrate a Graphics Processing Unit (GPU), which is responsible for rendering and drawing the content to be displayed on the screen. In some embodiments, the processor 21 may also include an AI processor, which is used to handle computational operations related to machine learning.

[0184] The memory 20 may include one or more computer-readable storage media, which may be non-transitory. The memory 20 may also include high-speed random access memory and non-volatile memory, such as one or more disk storage devices or flash memory devices. In this embodiment, the memory 20 is used to store at least the following computer program 201, which, after being loaded and executed by the processor 21, is capable of implementing the relevant steps of the adaptation method disclosed in any of the foregoing embodiments. In addition, the resources stored in the memory 20 may also include an operating system 202 and data 203, and the storage method may be temporary storage or permanent storage. The operating system 202 may include Windows, Unix, Linux, etc. The data 203 may include, but is not limited to, the data involved in the aforementioned adaptation method.

[0185] In some embodiments, the adapter may further include a display screen 22, an input / output interface 23, a communication interface 24, a power supply 25, and a communication bus 26.

[0186] Those skilled in the art will understand that Figure 5 The structure shown does not constitute a limitation on the adapter device and may include more or fewer components than shown.

[0187] The adapter device provided in this embodiment of the invention includes a memory and a processor. When the processor executes the program stored in the memory, it can implement the following method: the adapter method, with the same effect as above.

[0188] This invention also provides a computer program product, including a computer program / instruction, which, when executed by a processor, implements the steps of the adaptation method described above.

[0189] Finally, the present invention also provides an embodiment corresponding to a computer-readable storage medium. The computer-readable storage medium stores a computer program, which, when executed by a processor, performs the steps described in the above method embodiments.

[0190] It is understood that if the methods in the above embodiments are implemented as software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and executes all or part of the steps of the methods described in the various embodiments of the present invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0191] The computer-readable storage medium provided by this invention includes the adaptation method mentioned above, and has the same effect.

[0192] The above provides a detailed description of the adaptation method, apparatus, device, and medium provided by the present invention. The various embodiments in the specification are described in a progressive manner, with each embodiment focusing on its differences from other embodiments. Similar or identical parts between embodiments can be referred to interchangeably. For the apparatus disclosed in the embodiments, since it corresponds to the method disclosed in the embodiments, the description is relatively simple; relevant parts can be referred to in the method section. It should be noted that those skilled in the art can make several improvements and modifications to the present invention without departing from the principles of the invention, and these improvements and modifications also fall within the protection scope of the present invention.

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

Claims

1. An adaptation method, characterized in that, include: Obtain information about the current server of the bus interface device to be adapted; The current configuration file corresponding to the current server is obtained from a pre-established adaptation file database based on the information of the current server. The information in the configuration file corresponding to the server includes at least the information of the server and the adaptation list information corresponding to the server. The adaptation list information includes at least the number of bus interface devices, the adaptation information of each bus interface device, and information indicating the end of the adaptation information. The number of bus interface devices in the configuration file is determined by the number of bus interface devices in the adaptation list information, and / or by the number of bus interface devices corresponding to the adaptation information in the adaptation list information and the information indicating the end of the adaptation information. Store the current configuration file on the current server; Control the restart of the current server so that the boot system of the current server can adapt to the bus interface device according to the information in the current configuration file; The process of obtaining the current server information for the bus interface device to be adapted includes: The cloud server obtains the request sent by the client and determines the information of the current server of the bus interface device to be adapted based on the content of the request; wherein the request sent by the client is sent by a server in the server cluster connected to the client; The step of retrieving the current configuration file corresponding to the current server from the pre-established adaptation file database based on the information of the current server includes: The cloud server retrieves the current configuration file corresponding to the current server from a pre-established adaptation file database based on the information of the current server, and sends the current configuration file corresponding to the current server to the client so that the client can retrieve the current configuration file corresponding to the current server. Before storing the current configuration file in the current server, the method further includes: The client sends the current configuration file to the current server of the corresponding bus interface device to be adapted.

2. The adaptation method according to claim 1, characterized in that, The information in the server's configuration file is stored in a preset format.

3. The adaptation method according to claim 2, characterized in that, The adaptation file database is located on a cloud server; The cloud server establishes the adaptation file database by including: Receive and parse the server configuration file sent by the host. The adaptation file database is established based on the received configuration file, and the server information obtained after parsing the configuration file is used as the index of the adaptation file database. The step of retrieving the current configuration file corresponding to the current server from the pre-established adaptation file database based on the information of the current server includes: The current configuration file corresponding to the current server is obtained from the adaptation file database based on the index represented by the information of the current server.

4. The adaptation method according to claim 3, characterized in that, The configuration file also includes key information; the information in the adaptation list is stored in the following order: the number of bus interface devices, the adaptation information of each bus interface device, and information indicating the end of the adaptation information. The process of sending the configuration file corresponding to the server from the host to the cloud server includes: The host loads and parses at least one configuration file corresponding to a server. Verify the key information in the configuration file and obtain the verification result; If the verification result is detected as verification failure, then return to the step of verifying the key information of the configuration file and obtaining the verification result; If the verification result is detected as successful, then the current file format of the configuration file is obtained; If the current file format is found to be the same as the preset format, the number of bus interface devices in the configuration file is obtained; Determine whether the number of bus interface devices in the configuration file is the same as the number of bus interface devices corresponding to the pre-stored server. If not, return to the steps of verifying the key information in the configuration file and obtaining the verification result; If so, a preview interface for the configuration file is provided on the host, and the configuration file is encrypted, packaged, and sent to the cloud server.

5. The adaptation method according to claim 3 or 4, characterized in that, The process of sending the configuration file corresponding to the server from the host to the cloud server includes: The host sends at least one version of the configuration file corresponding to the server to the cloud server; After obtaining the request sent by the client through the cloud server and determining the information of the current server of the bus interface device to be adapted based on the content of the request, before retrieving the current configuration file corresponding to the current server from the pre-established adaptation file database based on the information of the current server in the cloud server, the method further includes: In the cloud server, it is determined whether the current version of the current server's configuration file is lower than the version of the stored configuration file based on the content of the request; If so, the current configuration file corresponding to the current server is obtained from the pre-established adaptation file database in the cloud server according to the information of the current server; If not, the cloud server will send a message to the client indicating that the response request failed.

6. The adaptation method according to claim 5, characterized in that, After the client sends the current configuration file to the current server of the corresponding bus interface device to be adapted, and before storing the current configuration file in the current server, the method further includes: The current version of the configuration file is updated through the client and using the current configuration file of the current server; From the moment the updated configuration file is detected, the client receives a notification message from the current server indicating whether the update was successful or failed within a preset time period. Upon receiving a notification message indicating a successful update from the client, proceed to the step of storing the current configuration file on the current server; If a prompt message indicating update failure is received through the client, the process returns to the step of updating the current version of the configuration file through the client and using the current configuration file of the current server.

7. An adapter, characterized in that, include: The first acquisition module is used to acquire information about the current server of the bus interface device to be adapted. The second acquisition module is used to acquire the current configuration file corresponding to the current server from a pre-established adaptation file database based on the information of the current server. The information in the configuration file corresponding to the server includes at least the server information and the adaptation list information corresponding to the server. The adaptation list information includes at least the number of bus interface devices, the adaptation information of each bus interface device, and information indicating the end of the adaptation information. The number of bus interface devices in the configuration file is determined by the number of bus interface devices in the adaptation list information, and / or by the number of bus interface devices corresponding to the adaptation information in the adaptation list information and the information indicating the end of the adaptation information. A storage module is used to store the current configuration file in the current server; The control module is used to control the restart of the current server so that the boot system of the current server can adapt to the bus interface device according to the information in the current configuration file. The first acquisition module specifically includes: The cloud server obtains the request sent by the client and determines the information of the current server of the bus interface device to be adapted based on the content of the request; wherein the request sent by the client is sent by a server in the server cluster connected to the client; The second acquisition module specifically includes: The cloud server retrieves the current configuration file corresponding to the current server from a pre-established adaptation file database based on the information of the current server, and sends the current configuration file corresponding to the current server to the client so that the client can retrieve the current configuration file corresponding to the current server. Before storing the current configuration file in the current server, the method further includes: The client sends the current configuration file to the current server of the corresponding bus interface device to be adapted.

8. An adapter device, characterized in that, include: Memory, used to store computer programs; A processor for implementing the steps of the adaptation method as described in any one of claims 1 to 6 when executing the computer program.

9. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that, when executed by a processor, implements the steps of the adaptation method as described in any one of claims 1 to 6.