Board-card-based resource expansion method for server and cloud computing system

WO2025196525A1PCT designated stage Publication Date: 2025-09-25CLOUD INTELLIGENCE ASSETS HOLDING (SINGAPORE) PTE LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
PCT/IB2025/051451
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-03-19
Filing Date
2025-02-12
Publication Date
2025-09-25

Smart Images

  • Figure IB2025051451_25092025_PF_FP_ABST
    Figure IB2025051451_25092025_PF_FP_ABST
Patent Text Reader

Abstract

Provided in the embodiments of the present disclosure are a resource expansion method for a server and a cloud computing system. The server is connected to a board card, and the method comprises: on the basis of a storage address of hardware description information of a server, a board card acquiring and parsing the hardware description information, and determining expansion configuration information of the server, wherein the storage address is acquired on the basis of data in a memory in the board card; and on the basis of the expansion configuration information, the board card generating corresponding topology information, such that an external device is connected on the basis of the topology information. Therefore, the expansion capacity of a server can be accurately acquired, and the topology of an external device can be allocated on this basis, such that the server can be connected to the external device; and since hardware description information of the server is acquired on the basis of data in a memory of the board card, the server does not need to be improved, and the method is suitable for all types of servers.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] This disclosure claims priority to Chinese patent application number 202410317994.3, filed with the China Patent Office on March 19, 2024, entitled "Server Resource Expansion Method and Cloud Computing System Based on Board Cards," the entire contents of which are incorporated herein by reference. Technical Field: This disclosure relates to the field of computer technology, and more particularly to a server resource expansion method based on board cards, a cloud computing system, a server, and a board card. Background: With the development of cloud computing technology, its scale continues to expand, and the volume of data and architectural complexity continue to increase. Cloud computing must cope with increasingly common data-intensive computing scenarios, while users are increasingly demanding low latency and high bandwidth. Consequently, the requirements for server computing power, bandwidth resources, and storage resources are also increasing. Server resources can be expanded through external devices. However, currently, when a server connects to external devices to expand resources, the service's BIOS (Basic Input Output System) code needs to be modified to adapt. An extended bus range is determined based on the bus range of the board and the bus extension range of the server; an extended bus range is determined based on the storage space range of the board and the storage space extension range of the server; and the number of connected external devices is determined based on the extended bus range and the extended bus range. Embodiments of the present disclosure also disclose a board-based server resource expansion method, which is applied to a server connected to a board. The method includes: upon server startup, obtaining a storage address of hardware description information based on data in a memory of the board; notifying the board of the storage address of the hardware description information, so that the board determines extended configuration information and generates topology information based on the hardware description information. Optionally, upon server startup, obtaining the storage address of the hardware description information based on data in the memory of the board includes: upon server startup, generating hardware description information based on system resources of the server; loading memory data from the board, and obtaining the storage address of the hardware description information based on the memory data. Optionally, loading data from the memory of the board and obtaining the storage address of the hardware description information based on the memory data includes: loading a driver program in the memory and executing the driver program; and the driver program reading the storage address of the hardware description information. Optionally, notifying the board of the storage address of the hardware description information includes: writing the storage address of the hardware description information into a designated storage space corresponding to the board of the board based on the driver program. Optionally, the method further includes: receiving topology information fed back by the board of the board and connecting external devices connected to the board of the board based on the topology information. An embodiment of the present disclosure also discloses a cloud computing system, comprising a server connected to a board of the board, wherein: upon startup, the server obtains the storage address of the hardware description information based on the data in the memory of the board ... The present disclosure also discloses a server, comprising: a processor, and a memory communicatively connected to the processor; the memory storing computer-executable instructions; and the processor executing the computer-executable instructions stored in the memory to implement the method described in the present disclosure.The present disclosure also discloses a board, comprising: a processor and a memory communicatively connected to the processor; the memory storing computer-executable instructions; and the processor executing the computer-executable instructions stored in the memory to implement the method described in the present disclosure. The present disclosure also discloses a computer-readable storage medium storing a computer program. When executed by the processor, the computer program causes the processor to perform the method described in the present disclosure. The present disclosure also discloses a computer program product, comprising the computer program. When executed by the processor, the computer program implements the method described in the present disclosure. Compared with the prior art, the present disclosure has the following advantages: In the present disclosure, the board obtains and parses the hardware description information based on the storage address of the hardware description information, determines the server's extended configuration information, and generates corresponding topology information based on the extended configuration information. This allows the server to accurately obtain the server's extended capabilities and allocate the topology of external devices accordingly, enabling the server to connect to external devices. Because the server's hardware description information is obtained based on data in the board's memory, the server does not need to be modified and is applicable to various types of servers. BRIEF DESCRIPTION OF THE DRAWINGS Figure 1 is a schematic diagram of the architecture of a system embodiment of the present disclosure; Figure 2 is an interactive diagram of an embodiment of a server resource expansion method of the present disclosure; Figure 3 is a flowchart of the steps of an embodiment of a server resource expansion method of the present disclosure; Figure 4 is a flowchart of the steps of another embodiment of a server resource expansion method of the present disclosure; Figure 5 is a flowchart of the steps of an embodiment of a resource expansion method of the present disclosure; Figure 6 is a flowchart of the steps of another embodiment of a resource expansion method of the present disclosure; Figure 7 is a schematic diagram of an example of resource expansion interaction in an embodiment of the present disclosure; Figure 8 is an interactive diagram of an embodiment of a resource expansion method for a cloud server in a cloud computing system of the present disclosure; and Figure 9 is a schematic diagram of the structure of an exemplary apparatus provided by an embodiment of the present disclosure. DETAILED DESCRIPTION To make the above-mentioned objects, features, and advantages of the present disclosure more readily understood, the present disclosure is further described in detail below in conjunction with the accompanying drawings and specific embodiments. The embodiments of the present disclosure can be applied to scenarios where server resources are expanded. Taking a cloud computing scenario as an example, to better provide computing and other services, a server can be connected to external devices such as network cards and storage devices by adding external cards. A network card, also known as a network adapter or network interface card, enables hardware devices to connect to a network and perform network communications. A storage device is a device used for data storage, such as a disk or hard drive. A disk refers to a storage device that uses magnetic recording technology to store data.Inserting a network card into a card can expand the server's bandwidth resources. Inserting a storage device into a card can expand the server's storage resources and improve server performance. As shown in FIG1 , the system includes a server 102 and a card 104. The server and card are connected via a PCIe (Peripheral Component Interface Express) bus.

[0002] PCIe is a high-speed serial bus. The server includes an operating system (OS) and a basic input / output system (BIOS). The OS is a built-in program that coordinates with the server's various hardware components and interacts with users. The BIOS is a set of programs embedded in a read-only memory (ROM) chip on the server's motherboard. The BIOS stores the server's basic input / output (BIO) programs, post-boot self-test programs, and system startup programs. BIOS also provides system parameters to the operating system. Changes to system hardware are hidden by the BIOS, serving as a bridge between the hardware and the operating system. The board includes a VSEC (Vendor-Specific Extended Capability) module. VSEC is an extended capability provided to manufacturers as specified in the PCI specification and can be customized by the manufacturer. The board can be connected to one or more external devices 106, such as an external device 1061 (see 062.106n), where n is a positive integer greater than 0. The type, quantity, and topology of external devices connected to the board are determined by the board based on the server's expansion capabilities when the server starts up. FIG2 illustrates an interactive diagram of an embodiment of a server resource expansion method disclosed herein. Step 202: When the server starts up, the storage address of the hardware description information is obtained and notified to the board of the hardware description information. When the server starts up, the server's BIOS generates hardware description information based on the server's system resources. This hardware description information is used to describe the system's hardware data. In this embodiment of the disclosure, the hardware description information may be data in a Differentiated System Description Table (DSDT). The DSDT contains information about all different devices except the basic system. While the basic system is the same for each device, the DSDT describes the system information for different devices. The DSDT is a table in the Advanced Configuration and Power Management Interface (ACPI), which is an interface used by operating system applications to manage all power management functions.In an optional embodiment of the present disclosure, obtaining the storage address of hardware description information during server startup includes: upon server startup, (the server BIOS) generating hardware description information based on the server's system resources; loading data from the board's expansion memory, such as data from the expansion ROM, and obtaining the storage address of the hardware description information based on the expansion ROM data. The expansion ROM data includes a driver for the expansion ROM, which obtains the storage address of the hardware description information. The expansion ROM is an optional external EPROM (Erasable Programmable Read-Only Memory) chip available for PCI / PCIe devices, used to store initialization code or system startup code for the corresponding PCI / PCIe device. Therefore, during startup, the BIOS can obtain the initialization code or system startup code from the expansion ROM, copy it to random access memory (RAM), and then execute the code, such as the driver code. Loading data from the expansion read-only memory (ERM) of the board and obtaining the storage address of hardware description information based on the data in the ERM includes: loading a driver program in the memory and executing the driver program; and reading the storage address of a hardware information table based on the driver program. The BIOS obtains the driver program from the expansion read-only memory (ERM) and stores the driver program in the server's RAM. The BIOS directs the Expansion ROM driver program to run on the server. The Expansion ROM driver program reads the address information of the system hardware information table (DSDT) and notifies the board card of the address information. Notifying the board card of the storage address of the hardware description information includes: the driver program determining the storage address of the hardware information table and writing the storage address of the hardware information table into a corresponding designated storage space on the board card. The Expansion ROM driver program writes the storage address of the DSDT into a space register configured by the board card's VSEC (Vendor-Specific Extended Capability).

[0003] VSEC is an extended capability provided to manufacturers as specified in the PCI specification and can be customized by the manufacturer. Based on VSEC capabilities, the disclosed embodiment configures the board at the factory, enabling the board to read the DSDT table based on VSEC. Consequently, when the server boots, the DSDT storage address is written to the VSEC space register, allowing the board to read the DSDT table. In step 204, the board obtains and parses the server's hardware description information based on its storage address, determining the server's extended configuration information. After the server completes the write operation of writing the hardware description information's storage address into the board's designated storage space, the board is notified of the write operation, reads the hardware description information based on the storage address, and then parses the hardware description information to determine the server's extended configuration information. The board obtains and parses the hardware description information based on the storage address of the hardware description information to determine the extended configuration information of the server, including: the board reading the storage address of the hardware information table from the configured storage space; a memory access controller of the board, such as a DMA (Direct Memory Access) controller, obtaining the hardware information table based on the storage address of the hardware information table; and parsing the hardware information table to determine the extended configuration information of the server, where the extended configuration information includes a bus extension range and a storage space extension range. After the expansion ROM driver completes the write operation of writing the storage address of the DSDT table into the board's space register, the board is notified of the write operation. Thereafter, the DMA controller reads the storage address of the DSDT table from the space register, reads the DSDT table according to the storage address, and parses the DSDT table to determine the extended configuration information of the server, where the extended configuration information is the resource range of external devices that can be expanded by the server. The bus expansion range refers to the range of buses that the server can support for expansion, that is, the number of buses it can support. A bus is a common path for information transmission between various functional components of a device. Through the bus, external devices can connect to the board, and then to the server via the board. The storage space expansion range refers to the amount of storage space that can be expanded by the server. In step 206, the board generates corresponding topology information based on the server's expansion configuration information. In this disclosed embodiment, the external devices connected to the server are subject to the server's expansion capabilities and are related to the expansion capabilities of the board. Typically, the board can support a wider range of buses and storage space, while the server can expand a relatively smaller range of buses and storage space.Therefore, when the board determines the number of connected external devices based on the extended configuration information, it can also obtain the board's resource configuration information. This resource configuration information describes the bus range and storage space range supported by the board. Combined with the server's bus extension range and storage space extension range, the number of external devices can be determined, thereby determining the number of various types of external devices. The board's resource configuration information can be obtained, the resource configuration information including the board's bus range and storage space range; an extended bus range can be determined based on the board's bus range and the server's bus extension range; an extended bus range can be determined based on the board's storage space range and the server's storage space extension range; and the number of connected external devices can be determined based on the extended bus range and the extended bus range. For example, a board supports 50 buses and a storage space range of 100 Mb (megabits). The server supports an expansion range of 5 buses and a storage space range of 100 Mb. Each network card requires one bus and 1 Mb of storage space, and each storage device requires one bus and 2 Mb of storage space. Therefore, the board's resource configuration information and the server's expansion configuration information can be combined to determine that the board can connect to five external devices. Accordingly, the five external devices can be allocated, for example, to connect to three network cards and two storage devices, or to connect to two network cards and three storage devices. After determining the number of external devices, the topology of the external devices is allocated based on the number of external devices, and the buses to which each external device is connected are allocated to obtain corresponding topology information. This topology information is fed back to the server, which connects the external devices connected to the board based on the topology information, thereby expanding the server's network resources and storage space. In summary, when the server starts up, it obtains the storage address of the hardware description information based on the data in the memory of the board card, and notifies the board card of the storage address of the hardware description information, allowing the board card to obtain the hardware description information and learn the server's expansion capabilities. The board card obtains and parses the hardware description information based on the storage address of the hardware description information, determines the server's expansion configuration information, and generates corresponding topology information based on the expansion configuration information. This accurately obtains the server's expansion capabilities and allocates the topology of external devices accordingly, enabling the server to connect to external devices. Because the server's hardware description information is obtained based on the data in the board card's memory, the method does not require server modification and is applicable to various types of servers. Based on the above embodiments, embodiments of the present disclosure also provide a server resource expansion method that enables the server to connect to external devices, wherein the server performs the following steps.FIG3 shows a flowchart illustrating the steps of an embodiment of a server resource expansion method disclosed herein. In step 302, when the server boots up, the BIOS obtains the storage address of the hardware description information based on the data in the memory of the board. In step 304, the board is notified of the storage address of the hardware description information, enabling the board to determine extended configuration information based on the hardware description information. In summary, when the server boots up, the BIOS (Business Operating System) obtains the storage address of the hardware description information and notifies the board of the hardware description information, enabling the board to obtain the server's hardware information, analyze the expansion capabilities, and configure the topology information of external devices accordingly, ensuring normal connection between the server and external devices and expanding the server's resources. FIG4 shows a flowchart illustrating the steps of another embodiment of a server resource expansion method disclosed herein. In step 402, when the server boots up, the BIOS generates hardware description information based on the server's system resources. This hardware description information includes a DSDT table. In step 404, the BIOS loads the driver from the board's Expansion ROM. In step 406, the BIOS stores the driver in RAM and executes it. In step 408, the driver determines the storage address of the DSDT table and writes the address into the storage space corresponding to the VSEC configuration of the board. In step 410, the server receives the topology information fed back by the board and connects to the external device connected to the board based on the topology information. This embodiment of the present disclosure is applicable to various server models and can expand resources for both existing and newly added servers in the system using the above method. Building on the above embodiment, this embodiment also provides a resource expansion method that enables a board to obtain the server's expansion capabilities and allocate the topology of external devices, thereby enabling the server to conveniently connect to external devices. FIG5 shows a flowchart of an embodiment of the resource expansion method of the present disclosure. In step 502, after receiving a write operation for the storage address of the server's hardware description information, the board reads and parses the corresponding hardware description information to determine the server's extended configuration information. The write operation involves the server's BIOS writing the storage address of the hardware description information obtained based on the board into the board's designated storage space. The storage address is obtained based on data in the board's memory. Step 504: The board generates corresponding topology information based on the extended configuration information.In summary, after receiving a write operation to the storage address of the hardware description information, the board reads and parses the corresponding hardware description information to determine the server's extended configuration information. This means that the board can obtain the server's hardware information, analyze its expansion capabilities, and set external device topology information based on the server's expansion capabilities, ensuring normal server connection to external devices and expanding server resources. Referring to Figure 6, a flowchart of another resource expansion method embodiment of the present disclosure is shown. Step 602: After receiving a write operation to the storage address of the DSDT table, the board reads the storage address of the DSDT table from the configured storage space. Step 604: The board's DMA controller accesses the storage address of the DSDT table and reads the DSDT table. Step 606: The DSDT table is parsed to determine the server's extended configuration information. The extended configuration information includes a bus extension range and a storage space extension range. Step 608: The board determines the number of connected external devices based on the extended configuration information. In step 610, the topology of external devices is allocated based on the number of external devices, generating topology information. In step 612, the board feeds the topology information back to the server. This embodiment of the present disclosure preconfigures the board's VSEC, enabling the server to notify the board of the address of the DSDT table. This allows the board to obtain the server's hardware information, analyze its expansion capabilities based on this information, and then configure the topology information of external devices based on the server's expansion capabilities, ensuring normal server connection to external devices and expanding server resources. This method is therefore applicable to servers of all models. Building on the above embodiment, this embodiment of the present disclosure also provides a resource expansion method, as shown in Figure 7: In step 702, when the server boots, the BIOS (Business Operating System) generates hardware description information based on the server's system resources. In step 704, the BIOS (Business Operating System) retrieves a driver from the board's Expansion ROM. In step 706, the BIOS (Business Operating System) stores the driver in RAM and executes it. In step 708, the driver determines the storage address of the DSDT table and writes the address into the storage space configured for the board's VSEC. In step 710, the board reads the storage address of the DSDT table from the configured storage space. In step 712, the board's DMA controller accesses the storage address of the DSDT table and reads the DSDT table. In step 714, the board parses the DSDT table to determine the extended configuration information of the server. The extended configuration information includes a bus extension range and a storage space extension range.In step 716, the board determines the number of connected external devices based on the extended configuration information. In step 718, the board allocates a topology of external devices based on the number of external devices, generating topology information. In step 720, the board feeds the topology information back to the server. In step 722, the server connects the external devices connected to the board based on the topology information. This disclosed embodiment, based on the PCIe and ACP I standards, enables the board to obtain resource configurations from various servers, improving board compatibility. Taking cloud computing as an example, servers in a cloud computing system can be various types of cloud servers, such as edge computing nodes and control servers. Upon startup, cloud servers can connect to smart boards to expand resources for better service provision. FIG8 illustrates an interactive diagram of an embodiment of a resource expansion method for a cloud server in a cloud computing system according to the present disclosure. In step 802, when a cloud server starts, the BIOS (Business Operating System) generates hardware description information based on the server's system resources. In step 804, the BIOS (Business Operating System) retrieves a driver from the Expansion ROM. In step 806, the BIOS stores the driver program in RAM and executes it. In step 808, the driver program determines the storage address of the DSDT table and writes it into the storage space configured for the VSEC on the board. In step 810, the board reads the storage address of the DSDT table from the configured storage space. In step 812, the board's DMA controller accesses the storage address of the DSDT table and reads the DSDT table. In step 814, the board parses the DSDT table to determine the server's extended configuration information. This extended configuration information includes a bus extension range and a storage space extension range. In step 816, the board determines the number of connected external devices based on the extended configuration information. In step 818, the board allocates a topology of external devices based on the number of external devices and generates topology information. In step 820, the board feeds the topology information back to the server. In step 822, the cloud server connects to the external devices connected to the board based on the topology information. The embodiments of the present disclosure rely on standard specifications such as PC IE and ACP I to obtain server PC I resources so that devices can form a PC I topology that meets the server resource requirements, thereby improving device compatibility and fully utilizing server resources.It should be noted that the embodiments of this disclosure may involve the use of user data. In actual applications, user-specific personal data may be used in the solutions described herein, subject to compliance with applicable laws and regulations of the country in which the application is located (for example, with the user's explicit consent, effective notification to the user, etc.), and within the scope permitted by applicable laws and regulations. It should be noted that, for simplicity of description, the method embodiments are presented as a series of actions. However, those skilled in the art should be aware that the embodiments of this disclosure are not limited by the order of the actions described, as certain steps may be performed in a different order or simultaneously, depending on the embodiments of this disclosure. Furthermore, those skilled in the art should also be aware that the embodiments described in this specification are preferred embodiments, and the actions involved are not necessarily required by the embodiments of this disclosure. The embodiments of this disclosure also provide a non-volatile readable storage medium storing one or more modules (programs). When these one or more modules are applied to a device, they can cause the device to execute the instructions (instructions) of the various method steps of the embodiments of this disclosure. The present disclosure also provides a computer-readable storage medium storing computer-executable instructions. When executed by a processor, the computer-executable instructions are used to implement the methods described in the present disclosure. The present disclosure also provides an electronic device, comprising: a processor and a memory communicatively connected to the processor; the memory storing computer-executable instructions; and the processor executing the computer-executable instructions stored in the memory to implement the methods described in the present disclosure. In the present disclosure, the electronic device includes a server, a terminal, or other device. The present disclosure can be implemented as an apparatus configured as desired using any appropriate hardware, firmware, software, or any combination thereof. The apparatus may include electronic devices such as a server (cluster), a terminal, or other device. Figure 9 schematically illustrates an exemplary apparatus 900 that can be used to implement various embodiments described in the present disclosure. For one embodiment, FIG. 9 shows an exemplary apparatus 900 having one or more processors 902, a control module (chipset) 904 coupled to at least one of the processor(s) 902, a memory 906 coupled to the control module 904, a non-volatile memory (NVM) / storage device 908 coupled to the control module 904, one or more input / output devices 910 coupled to the control module 904, and a network interface 912 coupled to the control module 904. OThe processor 902 may include one or more single-core or multi-core processors. The processor 902 may include any combination of general-purpose processors or specialized processors (e.g., graphics processors, application processors, baseband processors, etc.). In some embodiments, the apparatus 900 can function as a server, terminal, or other device described in the embodiments of the present disclosure. In some embodiments, the apparatus 900 may include one or more computer-readable media (e.g., memory 906 or NVM / storage device 908) having instructions 914, and one or more processors 902 configured to execute the instructions 914 in conjunction with the one or more computer-readable media to implement a module and thereby perform the actions described in the present disclosure. o For one embodiment, the control module 904 may include any suitable interface controller to provide any suitable interface to at least one of the processor(s) 902 and / or any suitable device or component in communication with the control module 904. The control module 904 may include a memory controller module to provide an interface to the memory 906. The memory controller module may be a hardware module, a software module, and / or a firmware module. The memory 906 may be used, for example, to load and store data and / or instructions 914 for the apparatus 900. O For one embodiment, the memory 906 may include any suitable volatile memory, such as a suitable DRAM. In some embodiments, the memory 906 may include double data rate type four synchronous dynamic random access memory (DDR4 SDRAM). For one embodiment, the control module 904 may include one or more input / output controllers to provide an interface to the NVM / storage device 908 and (one or more) input / output devices 910. For example, the NVM / storage device 908 may be used to store data and / or instructions 914. O The NVM / storage device 908 may include any suitable non-volatile memory (e.g., flash memory) and / or may include any suitable non-volatile storage device(s) (e.g., one or more hard disk drives (HDDs), one or more compact disk (CD) drives, and / or one or more digital versatile disk (DVD) drives).

[0004] NVM / storage device 908 may include storage resources that are part of the device on which apparatus 900 is installed, or it may be accessible to the device without being part of the device. For example, NVM / storage device 908 may be accessible via a network via input / output device(s) 910.

[0005] Input / output device(s) 910 may provide an interface for apparatus 900 to communicate with any other appropriate device. Input / output device(s) 910 may include communication components, audio components, sensor components, and the like. Network interface 912 may provide an interface for apparatus 900 to communicate via one or more networks. Apparatus 900 may wirelessly communicate with one or more components of a wireless network according to any of one or more wireless network standards and / or protocols. For example, apparatus 900 may access a wireless network based on a communication standard such as Bluetooth, WiFi, 2G, 3G, 4G, 9G, or a combination thereof for wireless communication. In one embodiment, at least one of the processor(s) 902 may be packaged together with the logic of one or more controllers (e.g., a memory controller module) of control module 904. In one embodiment, at least one of the processor(s) 902 may be packaged together with the logic of one or more controllers of control module 904 to form a system-in-package (SIP). In one embodiment, at least one of the processor(s) 902 may be integrated with the logic of one or more controllers of control module 904 on the same die. In one embodiment, at least one of the processor(s) 902 may be integrated with the logic of one or more controllers of the control module 904 on the same die to form a system-on-chip (SoC). In various embodiments, the apparatus 900 may be, but is not limited to, a terminal device such as a server, a desktop computing device, or a mobile computing device (e.g., a laptop, a handheld computing device, a tablet computer, a netbook, etc.). In various embodiments, the apparatus 900 may have more or fewer components and / or a different architecture. For example, in some embodiments, the apparatus 900 includes one or more cameras, a keyboard, a liquid crystal display (LCD) screen (including a touchscreen display), a non-volatile memory port, multiple antennas, a graphics chip, an application-specific integrated circuit (ASIC), and a speaker. The detection device may employ a main control chip as the processor or control module, with sensor data, location information, etc. stored in memory or NVM / storage devices. The sensor group may serve as an input / output device, and the communication interface may include a network interface. An embodiment of the present disclosure further provides an electronic device, comprising: a processor; and a memory, on which executable code is stored, and when the executable code is executed, the processor executes one or more methods described in the embodiments of the present disclosure.In embodiments of the present disclosure, the memory can store various data, such as target files, file-application association data, and other data, as well as user behavior data, thereby providing a data foundation for various processing. Embodiments of the present disclosure also provide one or more machine-readable media storing executable code. When executed, the executable code causes a processor to perform one or more of the methods described in the embodiments of the present disclosure. Since the apparatus embodiments are substantially similar to the method embodiments, their description is relatively simple; for relevant details, reference will be made to the description of the method embodiments. Embodiments of the present disclosure also provide a computer program product, including a computer program. When executed by a processor, the computer program implements the method of any of the aforementioned embodiments. The various embodiments in this specification are described in a progressive manner, with each embodiment focusing on the differences from other embodiments. Reference will be made to the same or similar parts between embodiments. The embodiments of the present disclosure are described with reference to the flowcharts and / or block diagrams of the methods, terminal devices (systems), and computer program products according to the embodiments of the present disclosure. It should be understood that each process and / or block in the flowcharts and / or block diagrams, as well as combinations of processes and / or blocks in the flowcharts and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing terminal device to produce a machine, such that the instructions, when executed by the processor of the computer or other programmable data processing terminal device, produce a device for implementing the functions specified in one or more processes in the flowcharts and / or one or more blocks in the block diagrams. These computer program instructions can also be stored in a computer-readable memory capable of directing the computer or other programmable data processing terminal device to operate in a specific manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means that implement the functions specified in one or more processes in the flowcharts and / or one or more blocks in the block diagrams. These computer program instructions can also be loaded onto a computer or other programmable data processing terminal device, causing the computer or other programmable terminal device to execute a series of operating steps to produce a computer-implemented process. Thus, the instructions executed on the computer or other programmable terminal device provide steps for implementing the functions specified in one or more flow charts and / or one or more blocks in the block diagrams. Although preferred embodiments of the present disclosure have been described, those skilled in the art may make additional changes and modifications to these embodiments once they understand the basic inventive concepts. Therefore, the appended claims are intended to be interpreted as covering the preferred embodiments and all changes and modifications that fall within the scope of the present disclosure.Finally, it should be noted that, in this document, relational terms such as first and second, etc., are used solely to distinguish one entity or operation from another, and do not necessarily require or imply any actual relationship or order between these entities or operations. Furthermore, the terms "comprise," "include," or any other variations thereof are intended to encompass non-exclusive inclusion, such that a process, method, article, or terminal device comprising a series of elements includes not only those elements but also other elements not explicitly listed, or elements inherent to such process, method, article, or terminal device. In the absence of further limitations, an element defined by the phrase "comprising a..." does not preclude the presence of additional identical elements in the process, method, article, or terminal device comprising the element. The above describes in detail a board-based server resource expansion method, a cloud computing system, a server, and a board provided by the present disclosure. Specific examples are used herein to illustrate the principles and implementation methods of the present disclosure. The descriptions of the above embodiments are intended only to facilitate understanding of the methods and core concepts of the present disclosure. Furthermore, those skilled in the art will appreciate that variations in the specific implementation methods and scope of application are possible based on the concepts of the present disclosure. In summary, the contents of this specification should not be construed as limiting the present disclosure.

Claims

Claims 1. A server resource expansion method based on a board, wherein: Applied to a board card, the board card being connected to a server, the method comprising: the board card obtaining and parsing hardware description information of the server based on a storage address of the hardware description information, thereby determining extended configuration information of the server, wherein the storage address is obtained based on data in a memory in the board card; and the board card generating corresponding topology information based on the extended configuration information.

2. The method according to claim 1, wherein: The board obtains and parses the hardware description information of the server based on the storage address of the hardware description information of the server to determine the extended configuration information of the server, including: the board reads the storage address of the hardware description information of the server from the configured storage space; a memory access controller of the board obtains the hardware description information of the server based on the storage address; and parses the hardware description information of the server to determine the extended configuration information of the server.

3. The method according to claim 1 or 2, wherein: The board generates corresponding topology information based on the extended configuration information, including: determining, by the board, the number of connected external devices based on the extended configuration information; allocating a topology structure of external devices based on the number of external devices to generate topology information, wherein the external devices include at least one of the following: a network card and a storage device.

4. The method according to claim 3, wherein: The extended configuration information includes: a bus extension range and a storage space extension range. The board determines the number of connected external devices based on the extended configuration information, including: obtaining resource configuration information of the board, the resource configuration information including the bus range and storage space range of the board; determining an extended bus range based on the bus range of the board and the bus extension range of the server; determining an extended bus range based on the storage space range of the board and the storage space extension range of the server; and determining the number of connected external devices based on the extended bus range and the extended bus range.

5. A server resource expansion method based on a board, wherein: Applied to a server connected to a board, the method includes: when the server starts up, obtaining a storage address of hardware description information based on data in a memory of the board; and notifying the board of the storage address of the hardware description information, so that the board determines extended configuration information and generates topology information based on the hardware description information.

6. The method according to claim 5, wherein: When the server is started, the storage address of the hardware description information is obtained based on the data in the memory of the board, including: when the server is started, the hardware description information is generated based on the system resources of the server; the data in the memory is loaded from the board, and the storage address of the hardware description information is obtained based on the data in the memory.

7. The method according to claim 6, wherein: The step of loading the memory data from the board and acquiring the storage address of the hardware description information based on the memory data includes: loading a driver program in the memory and executing the driver program; and reading the storage address of the hardware description information based on the driver program.

8. The method according to claim 6 or 7, wherein: The notifying the board of the storage address of the hardware description information includes: writing the storage address of the hardware description information into a designated storage space corresponding to the board based on the driver.

9. The method according to any one of claims 5 to 8, wherein: Also includes: Receive topology information fed back by the board, and connect the external device connected to the board based on the topology information.

10. A server, wherein: include: a processor, and a memory communicatively connected to the processor; The memory stores computer-executable instructions; The processor executes the computer-executable instructions stored in the memory to implement the method according to any one of claims 5 to 9.

11. A board, wherein: include: a processor, and a memory communicatively connected to the processor; The memory stores computer-executable instructions; The processor executes the computer-executable instructions stored in the memory to implement the method according to any one of claims 1 to 4.

12. A cloud computing system, comprising a server connected to a board, wherein: The server is the server according to claim 10; and the board is the board according to claim 11.

13. A computer-readable storage medium, wherein: The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the processor is caused to perform the method according to any one of claims 1 to 4 or any one of claims 5 to 9.

14. A computer program product, wherein: The method comprises a computer program, wherein when the computer program is executed by a processor, the method implements the method according to any one of claims 1 to 4 or any one of claims 5 to 9.

Citation Information

Patent Citations

  • Topology generation method, expansion board card and server

    CN117687944A

  • PCIE (Peripheral Component Interface Express) expansion system supporting identification and detection

    CN220473935U

  • System, method, and apparatus for dvsec for efficient peripheral management

    US20190042281A1

  • Information processing system, method and non-transitory computer-readable storage medium

    US20190079776A1