Equipment startup method and device, computer equipment and readable storage medium
Upon receiving the power-on command, the baseboard management controller sends a stop signal to the target component and queries the DPU status, ensuring that the DPU is initialized in a timely manner during the power-on process. This solves the problem of startup failure caused by the DPU not being ready, and improves the stability and efficiency of the computer equipment.
Patent Information
- Application Number
- CN202511023424.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-07-23
- Publication Date
- 2025-11-07
AI Technical Summary
During the power-on process, if the DPU fails to complete initialization in a timely manner, the computer may fail to boot or encounter errors, affecting the stability and efficiency of the device.
Upon receiving a power-on command, the baseboard management controller sends a stop signal to the target component, queries the initialization status of the DPU, and sends a start signal when the DPU initialization is complete, ensuring that the DPU is initialized in a timely manner during the power-on process and optimizing the initialization process of each component.
It effectively reduces startup failures or errors caused by DPU not being ready, improves the overall stability and boot efficiency of computer equipment, shortens boot time, and enhances user experience.
Smart Images

Figure CN120909659A_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of computer application, in particular to a device startup method and device, computer equipment and readable storage medium. BACKGROUND
[0002] With the development of computer application technology, the complexity of computer equipment is increasing, such as adding DPU (Data Processing Unit), unloading and accelerating network, storage, security and other data processing tasks in the data center, and improving the efficiency and performance of computer equipment. Therefore, it is particularly important to ensure that each component of the computer equipment can work effectively when the device is started.
[0003] In the traditional technology, the motherboard of the computer equipment will start immediately after receiving the startup instruction, however, the preparation state of the DPU is not considered during the motherboard startup process, so that in the case that the DPU fails to complete the initialization in time, it will cause startup failure or error, and further affect the stability of the whole computer equipment. SUMMARY
[0004] Therefore, it is necessary to provide a device startup method, device, computer equipment and readable storage medium to effectively reduce the occurrence of startup failure or error caused by the unprepared DPU when the computer equipment is started, and improve the overall stability of the computer equipment.
[0005] In a first aspect, the present application provides a device startup method applied to a baseboard management controller of a computer equipment, comprising:
[0006] In response to the startup instruction, after the initialization of the baseboard management controller is completed, a stop signal is sent to a target component in the computer equipment; wherein the target component includes a power control component or a hardware initialization component, and the stop signal is used to instruct the target component to stop performing a startup action on a startup component corresponding to the target component in the computer equipment;
[0007] Inquiring the initialization state of the data processing unit (DPU) in the computer equipment, and in the case that the initialization state of the DPU is initialization completed, a start signal is sent to the target component; wherein the start signal is used to instruct the target component to start performing a startup action on a startup component corresponding to the target component, so as to start the computer equipment.
[0008] In the embodiments of the present application, on one hand, after the DPU in the computer device is initialized, a start signal is sent to the target component in the computer device to start the computer device, so that the DPU can be initialized in time before the target component performs the starting action on the corresponding starting component during the starting process of the computer device, the failure or error caused by the unprepared DPU during the starting process is effectively reduced, and the overall stability of the computer device is improved. On the other hand, by optimizing the initialization process of each component during the starting process of the computer device, the starting efficiency of the computer device is improved, the unnecessary delay and resource waste are avoided, the starting time is shortened, and the user experience is improved.
[0009] In one of the embodiments, the target component includes a power supply control component, the starting component corresponding to the target component is a component that is powered by the power supply control component, the stop signal is used to instruct the power supply control component to stop powering the starting component corresponding to the power supply control component, and the start signal is used to instruct the power supply control component to start powering the starting component corresponding to the power supply control component; or, the target component includes a hardware initialization component, the starting component corresponding to the target component is a component that is initialized by the hardware initialization component, the stop signal is used to instruct the hardware initialization component to stop initializing the starting component corresponding to the hardware initialization component, and the start signal is used to instruct the hardware initialization component to start initializing the starting component corresponding to the hardware initialization component.
[0010] In the embodiments of the present application, different target components can be set according to the actual application requirements, so that on the basis of ensuring that the DPU is initialized in time before the target component performs the starting action on the corresponding starting component during the starting process of the computer device, the starting failure or error caused by the unprepared DPU is effectively reduced, the implementation mode of the starting process of the computer device can be diversified, and the starting flexibility of the computer device is improved.
[0011] In one of the embodiments, the target component includes a hardware initialization component, and the sending of the stop signal to the target component in the computer device includes:
[0012] In the case that the DPU state query request sent by the hardware initialization component is received and it is queried that the initialization state of the DPU is not completed, the stop signal is sent to the target component in the computer device.
[0013] In the embodiments of the present application, before the hardware initialization component completes the initialization of the corresponding component, the hardware initialization component can actively request the DPU state query from the baseboard management controller, and decide whether to initialize the corresponding component that has not been initialized according to the query result, so that some components in the component corresponding to the hardware initialization component can be initialized synchronously with the DPU, the starting time of the computer device is saved, and the starting efficiency is improved.
[0014] In one embodiment, the initialization state of the data processing unit DPU in the computer device is queried, and in the case that the initialization state of the DPU is initialization completed, a start signal is sent to the target component, including:
[0015] In a preset initialization duration, the initialization state of the data processing unit DPU in the computer device is queried;
[0016] In the case that the initialization state of the DPU is initialization completed, a start signal is sent to the target component.
[0017] In the embodiments of the present application, by querying the initialization state of the DPU within a preset initialization duration, the boot time of the computer device can be controlled within a certain time range, and the boot efficiency of the computer device is improved.
[0018] In one embodiment, the device boot method further includes:
[0019] In the case that the initialization state of the DPU is not initialization completed within a preset initialization duration, a start signal is sent to the target component; wherein the computer device after starting cannot realize the device function provided by the DPU.
[0020] In the embodiments of the present application, by forcibly booting the computer device in the case that the DPU initialization is timed out, the situation that the computer device fails to boot due to the failure of the DPU to initialize can be avoided, so as to ensure that the computer device can quickly respond and take subsequent measures in the case that the DPU fails to initialize.
[0021] In one embodiment, in response to the boot instruction, after the initialization of the baseboard management controller is completed, a stop signal is sent to the target component in the computer device, including:
[0022] In the case that the boot instruction is generated based on the triggering operation of the physical boot key of the computer device, in response to the boot instruction, after the initialization of the baseboard management controller is completed, a stop signal is sent to the target component in the computer device.
[0023] In the embodiments of the present application, in the case that the boot instruction is generated based on the triggering operation of the physical boot key of the computer device, the situation that the start fails or errors due to the unprepared DPU can be effectively reduced in the computer device boot process under non-specific conditions, and the overall stability of the computer device is improved.
[0024] In one embodiment, the device boot method further includes:
[0025] In a case where the start-up instruction is specified to be sent by the device through the reserved communication interface of the baseboard management controller, in response to the start-up instruction, after initialization of the baseboard management controller is completed, a start signal is sent to the target component; wherein the computer device after starting cannot implement the device function provided by the DPU.
[0026] In the embodiments of the present application, a communication interface is reserved on the baseboard management controller to receive a start-up instruction sent by other devices, so that the waiting process of the DPU initialization in the computer device start-up process can be bypassed by the specified device to force the computer device to start up, thereby providing use convenience for users in specific use cases.
[0027] In a second aspect, the present application further provides a device start-up apparatus applied to a baseboard management controller of a computer device, comprising:
[0028] A first signal sending module is configured to, in response to a start-up instruction, send a stop signal to a target component in the computer device after initialization of the baseboard management controller is completed; wherein the target component comprises a power supply control component or a hardware initialization component, and the stop signal is used to instruct the target component to stop performing a start-up action on a start-up component corresponding to the target component in the computer device;
[0029] A second signal sending module is configured to query an initialization state of a data processing unit (DPU) in the computer device, and send a start signal to the target component in a case where the initialization state of the DPU is queried to be initialization completed; wherein the start signal is used to instruct the target component to start performing a start-up action on a start-up component corresponding to the target component to start up the computer device.
[0030] In a third aspect, the present application further provides a computer device comprising a memory and a processor, wherein the memory stores a computer program, and the processor implements the steps in the method embodiments provided in the first aspect when executing the computer program.
[0031] In a fourth aspect, the present application further provides a computer readable storage medium having a computer program stored thereon, wherein the computer program is executed by a processor to implement the steps in the method embodiments provided in the first aspect.
[0032] In a fifth aspect, the present application further provides a computer program product comprising a computer program, wherein the computer program is executed by a processor to implement the steps in the method embodiments provided in the first aspect.
[0033] In the device startup method, the device, the computer device and the readable storage medium, the initialization of the baseboard controller of the computer device is completed in response to the startup instruction, and a stop signal is sent to a target component in the computer device to instruct the target component to stop performing a startup action on a startup component corresponding to the target component in the computer device. Then, the initialization state of the DPU in the computer device is queried, and in the case that the initialization state of the DPU is initialization completion, a start signal is sent to the target component to instruct the target component to start performing the startup action on the startup component corresponding to the target component, so as to start the computer device. In this way, on the one hand, after the initialization of the DPU in the computer device is completed, the start signal is sent to the target component in the computer device to start the computer device, which can ensure that the DPU completes the initialization in time before the target component performs the startup action on the corresponding startup component in the computer device during the startup of the computer device, effectively reduces the occurrence of startup failure or error caused by the unprepared DPU, and improves the overall stability of the computer device. On the other hand, by optimizing the initialization process of each component during the startup of the computer device, the startup efficiency of the computer device can be improved, unnecessary delay and resource waste can be avoided, the startup time can be shortened, and the user experience can be improved. BRIEF DESCRIPTION OF DRAWINGS
[0034] In order to more clearly illustrate the technical solutions in the embodiments of the present application or the related art, the drawings needed to be used in the description of the embodiments of the present application or the related art will be briefly introduced. Obviously, the drawings in the following description are only some embodiments of the present application, and for those skilled in the art, other related drawings can also be obtained without creative labor.
[0035] Figure 1 For the starting logic diagram of each component in the startup process of the computer device in the prior art;
[0036] Figure 2 For the flowchart of the device startup method provided by some embodiments of the present application;
[0037] Figure 3 For the starting logic diagram of the BMC and the power control component in the startup process of the computer device provided by some embodiments of the present application;
[0038] Figure 4 For the starting logic diagram of the BMC and the hardware initialization component in the startup process of the computer device provided by some embodiments of the present application;
[0039] Figure 5 For the flowchart of sending the start signal provided by some embodiments of the present application;
[0040] Figure 6 A flowchart of a device booting method provided by some embodiments of the present application is shown in FIG. 1;
[0041] Figure 7 A flowchart of a device booting method provided by some embodiments of the present application is shown in FIG. 1;
[0042] Figure 8 A structural block diagram of a device booting apparatus provided by some embodiments of the present application is shown in FIG. 2;
[0043] Figure 9 An internal structural diagram of a computer device provided by some embodiments of the present application is shown in FIG. 3. DETAILED DESCRIPTION
[0044] In order to make the objects, technical solutions and advantages of the present application clearer, the present application will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and should not be used to limit the present application.
[0045] With the development of computer application technology, the complexity of computer devices is increasing, and it is particularly important to ensure that each component of the computer device can work effectively in coordination when the device is booted. In the traditional technology, the motherboard of the computer device will start immediately after receiving the booting instruction. However, the preparation state of the DPU is not considered during the motherboard starting process, so that in the case that the DPU fails to complete the initialization in time, it will lead to the failure or error of the start, and further affect the stability of the entire computer device.
[0046] For example, as shown in FIG. 1, the motherboard of the computer device receives a booting instruction, and then starts immediately. However, the preparation state of the DPU is not considered during the motherboard starting process, so that in the case that the DPU fails to complete the initialization in time, it will lead to the failure or error of the start, and further affect the stability of the entire computer device. Figure 1As shown, it is a schematic diagram of the starting logic of each component in the boot process of the computer device in the prior art. Among them, the BIOS (Basic Input / Output System, Basic Input / Output System) firmware is the firmware when the computer starts, responsible for initializing hardware and loading the operating system, which is located in the read-only memory on the motherboard of the computer device, providing basic hardware control and self-checking function (POST, Power-On Self-Test), allowing users to configure system parameters, such as hardware startup order and hardware settings. After the hardware initialization is completed, the BIOS firmware loads the OS (Operating System, Operating System) of the computer device, so that the OS of the computer device starts to run and completes the computer device boot. DPU is a specially designed processor for accelerating computing and network tasks in data centers, which can handle data transmission, storage management and security, and reduce the burden of CPU (Central Processing Unit, Central Processing Unit). DPU usually integrates network interface, memory and processing capability, supports efficient data flow management, and enhances overall system performance. Since DPU initialization is slow, the time when DPU completes initialization is after the time when the BIOS firmware completes PCIe (Peripheral Component Interconnect Express, Peripheral Component Interconnect Express) device initialization, so that the computer device after booting cannot recognize DPU, and thus cannot realize the device functions provided by DPU. (PCIe) is a high-speed serial computer expansion bus standard, used to connect the motherboard and various hardware devices such as graphics cards, storage controllers and network interface cards. Compared with the traditional PCI (Peripheral Component Interconnect, Peripheral Component Interconnect) bus, PCIe provides higher data transmission speed and better bandwidth management, supports multiple data channels for parallel transmission, has good flexibility and scalability, and meets the requirements of computer devices for high performance and low latency.
[0047] Based on this, in one exemplary embodiment, as shown in Figure 2 A device boot method is provided, which is applied to the baseboard management controller of the computer device, and specifically includes the following steps:
[0048] S201, in response to the boot instruction, after the initialization of the baseboard management controller is completed, a stop signal is sent to the target component in the computer device.
[0049] Among them, the target component includes a power control component or a hardware initialization component, and the stop signal is used to instruct the target component to stop performing a boot action on the boot component corresponding to the target component in the computer device.
[0050] The baseboard management controller (BMC) is a special microcontroller mainly used for managing and monitoring the hardware state of a computer system. It can detect a power-on instruction for the computer device, and in response to the detected power-on instruction, initialize itself to ensure that all functions are normal. Then, after initialization is completed, the BMC sends a stop signal to the target component in the computer device to instruct the target component to stop performing a power-on action on the power-on component corresponding to the target component in the computer device.
[0051] The target component refers to a component participating in the computer device power-on process, which can include a power control component or a hardware initialization component.
[0052] The power control component is a component responsible for supplying power to the motherboard, chip, interface, and other components participating in the computer device power-on process. It controls the normal sequence of power supply required by the motherboard, chip, interface, and other components participating in the computer device power-on process. The power-on component corresponding to the power control component is the component powered by the power control component. The stop signal is used to instruct the power control component to stop powering the power-on component corresponding to itself. For example, the power control component can be a CPLD (Complex Programmable Logic Device) used to implement digital logic functions. CPLD has multiple logic blocks (Logic Blocks) and programmable (Programmable Interconnect) interconnections, which can be flexibly configured according to requirements. It usually has lower power consumption and faster response time, and is suitable for small and medium-sized logic design, such as control system, interface circuit, and signal processing. The reprogrammability of CPLD makes it very flexible in design verification and product iteration.
[0053] The hardware initialization component is a component responsible for detecting and initializing CPU, memory, motherboard chipset, graphics card, hard disk interface, and other core hardware participating in the computer device power-on process to ensure that the core hardware works normally. The power-on component corresponding to the hardware initialization component is the component initialized by the hardware initialization component. The stop signal is used to instruct the hardware initialization component to stop initializing the power-on component corresponding to itself. For example, the hardware initialization component can be a BIOS firmware.
[0054] S202, query the initialization state of the data processing unit DPU in the computer device, and in the case where the initialization state of the DPU is initialization completed, send a start signal to the target component.
[0055] The start signal is used to instruct the target component to start a start-up action on a start-up component corresponding to the target component, so as to start the computer device.
[0056] After the stop signal is sent to the target component, the initialization state of the DPU in the computer device can be queried. The initialization state of the DPU can also be referred to as the start state of the DPU. When the initialization state of the DPU is initial completion, the start state of the DPU can be referred to as start completion. Correspondingly, when the initialization state of the DPU is initial incomplete, the start state of the DPU can be referred to as start incomplete.
[0057] In an optional embodiment, the DPU of the computer device can be initialized after the computer device is powered on and before the start-up instruction is received. In this way, after the BMC of the computer device is initialized in response to the start-up instruction, the initialization state of the DPU can be directly queried as initialization completion, so that the start-up time of the computer device can be saved, and the start-up efficiency can be improved.
[0058] In another optional embodiment, after the BMC of the computer device is initialized in response to the start-up instruction, an initialization instruction can be sent to the DPU to instruct the DPU to initialize. In this way, after the initialization instruction is sent, the initialization state of the DPU can be periodically queried, so that the initialization state of the DPU can be timely queried as initialization completion, and the start-up efficiency can be improved.
[0059] The initialization state of the DPU can be queried in various ways, and no specific limitation is made in this regard.
[0060] In an optional embodiment, the BMC of the computer device can send an IPMI (Intelligent Platform Management Interface) command to the BMC on the DPU to obtain state information fed back by the BMC on the DPU in response to the IPMI command. The state information can indicate that the DPU initialization is completed or the DPU initialization is not completed.
[0061] In another optional embodiment, the BMC of the computer device can query the start state of the DPU through MCTP (Management Component Transport Protocol). Specifically, the BMC of the computer device sends a query command to the CPU on the DPU through MCTP over SMBus (Management Component Transport Protocol over System Management Bus) or MCTP over PCIe (Management Component Transport Protocol over Peripheral Component Interconnect Express) to obtain state information fed back by the CPU on the DPU in response to the query command, which can represent that the DPU initialization is completed or the DPU initialization is not completed.
[0062] After the initialization state of the DPU is queried to be completed, a start signal is sent to the target component to instruct the target component to start a boot action on the corresponding boot component of the target component to start the computer device.
[0063] In the case where the target component includes a power control component, the start signal is used to instruct the power control component to start supplying power to the corresponding boot component of the power control component, and the boot action is a power supply action. In the case where the target component includes a hardware initialization component, the start signal is used to instruct the hardware initialization component to initialize the corresponding boot component of the hardware initialization component, and the boot action is an initialization action.
[0064] In addition, in some cases, the DPU can not be set in the computer device, or the set DPU fails to be installed or is incorrect. Based on this, in an optional embodiment, before the initialization state of the DPU is queried, it is necessary to identify whether the DPU is in place. The DPU in place means that the DPU has been correctly installed and is in a physical connection state, i.e., the DPU chip or DPU card has been correctly inserted into the corresponding interface (such as a PCIe slot) of a server, switch or other device, and is in a detectable state at the hardware level, which only represents the physical installation and connection state of the DPU and does not represent that the DPU is normally running. The DPU in place can be identified in various ways, which are not limited here.
[0065] For example, the BMC of the computer device sends an access request to the IIC chip on the DPU, and identifies whether the DPU is present by whether a feedback response of the IIC (Inter-Integrated Circuit) chip is received. If the feedback response is received, it is identified that the DPU is present; otherwise, it is identified that the DPU is not present.
[0066] For another example, the BMC of the computer device sends an access request to the CPU of the DPU through MCTP over SMBus or MCTP over PCIe, and identifies whether the DPU is present by whether a feedback response of the CPU of the DPU is received. If the feedback response is received, it is identified that the DPU is present; otherwise, it is identified that the DPU is not present.
[0067] For another example, whether the register of the CPLD records a state code representing that the DPU is present is used to identify whether the DPU is present. When the DPU is inserted into the corresponding slot of the computer device, the PRSNT# (Presence signal) pin level of the slot changes, the PWR_GOOD (Power Good) signal of the power module is valid, etc., which are captured and converted into binary states in the register by the CPLD. A specific address register is defined in the CPLD, and 1-2 bits are used to represent the DPU present state. Thus, the BMC of the computer device can read the value of the bit representing the DPU present state in the register of the CPLD to obtain the state code of the DPU. If the read state code of the DPU represents that the DPU is present, it is identified that the DPU is present; otherwise, it is identified that the DPU is not present.
[0068] In the above device booting method, in response to the booting instruction, a stop signal is sent to a target component in the computer device after initialization of a baseboard controller of the computer device is completed, to instruct the target component to stop performing a booting action on a booting component corresponding to the target component in the computer device; then the initialization state of a DPU in the computer device is queried, and in the case where the initialization state of the DPU is initialization completion, a start signal is sent to the target component, to instruct the target component to start performing the booting action on the booting component corresponding to the target component, to start the computer device. In this way, on the one hand, after the initialization of the DPU in the computer device is completed, the start signal is sent to the target component in the computer device to start the computer device, which can ensure that the DPU completes the initialization in time before the target component performs the booting action on the corresponding booting component in the computer device during the booting process of the computer device, effectively reducing the occurrence of start failure or errors caused by the DPU not being ready, and improving the overall stability of the computer device. On the other hand, by optimizing the initialization process of each component when the computer device is booted, the booting and starting efficiency of the computer device can be improved, unnecessary delay and resource waste can be avoided, the booting time can be shortened, and the user experience can be improved.
[0069] On the basis of the above embodiment, in one example embodiment, the target component includes a power supply control component, the booting component corresponding to the target component is a component to which the power supply control component supplies power, the stop signal is used to instruct the power supply control component to stop supplying power to the booting component corresponding to the power supply control component, and the start signal is used to instruct the power supply control component to start supplying power to the booting component corresponding to the power supply control component. For example, as shown in Figure 3 the starting logic diagram of the BMC and the power supply control component in the booting process of the computer device in this embodiment. After the initialization of the baseboard management controller is completed in response to the booting instruction, the BMC sends a stop signal to the CPLD to instruct the CPLD to stop supplying power to the BIOS firmware corresponding to the CPLD. The BMC actively polls the initialization state of the DPU, and in the case where the initialization state of the DPU is initialization completion, actively sends a start signal to the CPLD to actively inform the DPU initialization completion, instructs the CPLD to supply power to the BIOS firmware corresponding to the CPLD, so that the BIOS firmware initializes the hardware corresponding to the BIOS firmware after the CPLD supplies power, to start the computer device.
[0070] Alternatively, the target component includes a hardware initialization component, the booting component corresponding to the target component is a component to be initialized by the hardware initialization component, the stop signal is used to instruct the hardware initialization component to stop initializing the booting component corresponding to the hardware initialization component, and the start signal is used to instruct the hardware initialization component to start initializing the booting component corresponding to the hardware initialization component.
[0071] In the embodiment, different target components can be set according to the requirements of actual application, so that the implementation of the computer device booting can be enriched and the flexibility of the computer device booting can be increased on the basis of ensuring that the DPU completes the initialization in time during the computer device booting process, and the DPU performs the booting action on the corresponding booting component, and effectively reducing the occurrence of the booting failure or error caused by the DPU not being ready.
[0072] On the basis of the above embodiments, in an exemplary embodiment, in the case where the target component includes the hardware initialization component, the manner of sending the stop signal to the target component in the computer device can include, in the case where the DPU state query request sent by the hardware initialization component is received and it is queried that the initialization state of the DPU is not completed, sending the stop signal to the target component in the computer device.
[0073] The so-called DPU state query request is a request for obtaining the initialization state of the DPU.
[0074] In an optional embodiment, after the BMC in the computer device responds to the booting instruction and the initialization of itself is completed, the initialization state of the DPU is polled. Then, after the DPU state query request sent by the hardware initialization component is received, the BMC in the computer device determines whether the DPU initialization is completed according to the latest polled initialization state of the DPU. In the case where the latest polled initialization state of the DPU is not completed, the hardware initialization component in the computer device sends the stop signal.
[0075] In another optional embodiment, after the DPU state query request sent by the hardware initialization component is received, the BMC in the computer device queries the initialization state of the DPU in response to the received DPU state query request, and in the case where the queried initialization state of the DPU is not completed, the hardware initialization component in the computer device sends the stop signal.
[0076] It can be understood that the number of the booting components corresponding to the hardware initialization component can be multiple, and the hardware initialization component initializes the corresponding booting components one by one. As long as it is ensured that the initialization completion time of the last booting component for initialization among the booting components corresponding to the hardware initialization component is not earlier than the initialization completion time of the DPU, it can be ensured that the DPU completes the initialization in time, and the booting failure or error caused by the DPU not being ready can be avoided.
[0077] Based on this, optionally, the BMC in the computer device first sends a start signal to the power control component to instruct the power control component to start supplying power to the corresponding boot component of the power control component after the BMC is initialized in response to the boot instruction, wherein the corresponding boot component of the power control component includes the hardware initialization component. In this way, the hardware initialization component can stop the initialization action after the power control component supplies power and before the initialization of the last boot component in the corresponding boot components of the hardware initialization component is completed, and send a DPU state query request to the BMC in the computer device. That is, the corresponding boot component of the hardware initialization component includes the boot component corresponding to the hardware initialization component which is not initialized.
[0078] For example, the hardware initialization component can send a DPU state query request to the BMC in the computer device as soon as the power control component supplies power; for another example, the hardware initialization component can send a DPU state query request to the BMC in the computer device before the initialization of the last boot component in the corresponding boot components of the hardware initialization component is started.
[0079] For example, the hardware initialization component can send a DPU state query request to the BMC in the computer device as soon as the power control component supplies power; for another example, the hardware initialization component can send a DPU state query request to the BMC in the computer device before the initialization of the last boot component in the corresponding boot components of the hardware initialization component is started. Figure 4 For example, the hardware initialization component can send a DPU state query request to the BMC in the computer device as soon as the power control component supplies power; for another example, the hardware initialization component can send a DPU state query request to the BMC in the computer device before the initialization of the last boot component in the corresponding boot components of the hardware initialization component is started.
[0080] In the present application, the hardware initialization component can actively request the DPU state query from the baseboard management controller before completing the initialization of the corresponding component, so as to determine whether to initialize the corresponding component according to the query result, thereby some components in the hardware initialization component corresponding component can be synchronized to initialize, saving the boot time of the computer device and improving the boot efficiency.
[0081] On the basis of the above embodiments, in an exemplary embodiment, the sending of the start signal is further refined, and optionally, as shown in Figure 5 may include the following steps:
[0082] S501, within a preset initialization duration, query the initialization state of the DPU in the computer device.
[0083] The preset initialization duration can be set according to empirical values, trial values obtained through multiple trials, actual application requirements, and device performance of the computer device, and the like, and no specific limitation is made. For example, the preset initialization duration can be 3 minutes, etc.
[0084] In order to ensure that the computer device can be started in time, so as to avoid the situation that the computer device cannot be started for use by the user due to the failure of the DPU to initialize, the preset initialization duration can be set in advance, and the initialization state of the DPU in the computer device can be queried within the preset initialization duration. That is, the initialization process of the DPU in the computer device is timed to determine whether the DPU completes the initialization within the preset initialization duration.
[0085] S502, in the case where the initialization state of the DPU is initialization completed, a start signal is sent to the target component.
[0086] In the case where the initialization state of the DPU is initialization completed, it can be determined that the DPU in the computer device completes the initialization within the preset initialization duration, so that the BMC of the computer device can send a start signal to the target component to instruct the target component to start the boot action of the boot component corresponding to the target component to start the computer device.
[0087] In the present embodiment, by querying the initialization state of the DPU within the preset initialization duration, the boot time of the computer device can be controlled within a certain time range, and the boot efficiency of the computer device is improved.
[0088] On the basis of the above embodiments, in an example embodiment, when the initialization state of the DPU in the computer device is queried within the preset initialization time length, the device booting method can further include, in the case that the initialization state of the DPU is not queried as initialization completed within the preset initialization time length, sending a start signal to the target component; wherein the computer device after starting cannot implement the device function provided by the DPU.
[0089] When the initialization state of the DPU in the computer device is queried within the preset initialization time length, the DPU can not complete initialization within the preset initialization time length due to DPU failure and the like, so that there is a case that the initialization state of the DPU is not queried as initialization completed within the preset initialization time length. In this way, in the case that the initialization state of the DPU is not queried as initialization completed within the preset initialization time length, the BMC of the computer device can still send a start signal to the target component to instruct the target component to start performing a booting action on the booting component corresponding to the target component, thereby forcibly starting the computer device. Thus, since the computer device is started in the case that the DPU initialization is not completed, the computer device after starting cannot implement the device function provided by the DPU.
[0090] In the embodiments of the present application, in the case that the initialization state of the DPU is not queried as initialization completed within the preset initialization time length, the BMC of the computer device can make a DPU initialization timeout determination, and by forcibly booting the computer device in the case of DPU initialization timeout, a disaster recovery mechanism can be provided to avoid the case of computer device booting failure caused by the DPU being unable to initialize, so as to ensure that the computer device can quickly respond and take subsequent measures in the case of the DPU being unable to initialize.
[0091] On the basis of the above embodiments, in an example embodiment, the way of sending a stop signal to the target component in the computer device can include, in the case that the booting instruction is generated based on the triggering operation of the physical booting button of the computer device, in response to the booting instruction, sending a stop signal to the target component in the computer device after the initialization of the baseboard management controller is completed.
[0092] Generally, a physical booting button can be provided in the computer device, and a user can start the computer device by triggering the physical booting button. When the computer device detects the triggering operation of the physical booting button, a booting instruction is generated, and then the BMC of the computer device responds to the booting instruction to initialize itself, and after the initialization is completed, a stop signal is sent to the target component in the computer device to start the computer device.
[0093] Optionally, in some cases, the computer device can be started by the control application installed in the mobile terminal such as a mobile phone, and therefore, in the case where the start-up instruction is sent by the control application of the mobile terminal installed computer device, the BMC of the computer device sends a stop signal to the target component in the computer device after the initialization of the baseboard management controller is completed in response to the start-up instruction. Wherein, the user triggers the start-up control in the control application of the mobile terminal installed computer device, and then the mobile terminal generates a start-up instruction and sends the start-up instruction to the computer device through wireless network communication or the like when detecting the triggering operation, and then the BMC of the computer device responds to the start-up instruction, initializes itself, and sends a stop signal to the target component in the computer device after the initialization is completed, so as to start the computer device.
[0094] In the embodiment, in the case where the start-up instruction is generated based on the triggering operation of the physical start-up button of the computer device, the occurrence of the start-up failure or error caused by the unprepared DPU can be effectively reduced in the computer device start-up process in the normal case, and the overall stability of the computer device is improved.
[0095] On the basis of the above embodiments, in an exemplary embodiment, the device start-up method can further include, in the case where the start-up instruction is sent by a specified device through a reserved communication interface of the baseboard management controller, sending a start-up signal to the target component after the initialization of the baseboard management controller is completed in response to the start-up instruction; wherein the computer device after starting cannot realize the device function provided by the DPU.
[0096] Wherein, the so-called specified device is a computer device that communicates with the computer device through the reserved communication interface on the BMC of the computer device. Wherein, the BMC of the computer device reserves a remote communication interface as a reserved communication interface, which is independent of the operating system of the computer device, directly realizes the management function through the BMC of the computer device, and communicates with other devices. For example, the reserved communication interface can be an IPMI (Intelligent Platform Management Interface, hardware level out-of-band management protocol) interface, an HTTP (Hypertext Transfer Protocol) interface, a Redfish interface (The Redfish Scalable Platforms Management Application Programming Interface, Redfish Scalable Platform Management Application Programming Interface) and the like.
[0097] In this way, the specified device can send the power-on instruction to the computer device through the reserved communication interface on the BMC of the computer device. In turn, the BMC of the computer device initializes itself in response to the power-on instruction, and after the initialization is completed, sends a start signal to the target component in the computer device to start the computer device. Since the power-on process of the computer device bypasses the waiting process of DPU initialization, the forced power-on of the computer device is realized, and therefore, during the power-on process of the computer device, the DPU initialization is not completed, and the computer device after starting cannot realize the device functions provided by the DPU.
[0098] In the embodiment, a communication interface is reserved on the baseboard management controller to receive the power-on instruction sent by other devices, so that the waiting process of DPU initialization during the power-on process of the computer device can be bypassed by the specified device to force the computer device to power on, thereby providing use convenience for users in specific use cases.
[0099] On the basis of the above embodiments, in an exemplary embodiment, as shown in Figure 6 the device power-on method can include the following steps:
[0100] S601, in response to the power-on instruction, after the initialization of the baseboard management controller is completed, a stop signal is sent to the target component in the computer device to instruct the power supply control component to stop supplying power to the power-on component corresponding to the power supply control component.
[0101] S602, within a preset initialization time, the initialization state of the DPU in the computer device is queried.
[0102] S603, in the case where the initialization state of the DPU is queried within the preset initialization time and is initialization completed, a start signal is sent to the power supply control component to instruct the power supply control component to start supplying power to the power-on component corresponding to the power supply control component, and start the computer device.
[0103] S604, in the case where the initialization state of the DPU is not queried within the preset initialization time and is initialization completed, a start signal is sent to the target component, a start signal is sent to the power supply control component to instruct the power supply control component to start supplying power to the power-on component corresponding to the power supply control component, and start the computer device, and the computer device after starting cannot realize the device functions provided by the DPU.
[0104] The specific implementation modes of S601-S604 are the same as those in the above method embodiments, and will not be described here.
[0105] On the basis of the above embodiments, in an exemplary embodiment, as shown in Figure 7As shown, the device power-on method may include the following steps:
[0106] S701, in response to the power-on command, after completing the initialization of the baseboard management controller, sends a start signal to the power control component in the computer device to instruct the power control component to start supplying power to the power-on component corresponding to the power control component.
[0107] S702, within a preset initialization time, queries the initialization status of the DPU in the computer device.
[0108] S703, upon receiving a DPU status query request from the hardware initialization component and finding that the DPU initialization status is incomplete, sends a stop signal to the hardware initialization component in the computer device to instruct the hardware initialization component to stop initializing the power-on component corresponding to the hardware initialization component.
[0109] S704, if it finds that the initialization status of the DPU is complete within the preset initialization time, sends a start signal to the hardware initialization component to instruct the hardware initialization component to start the initialization of the power-on component corresponding to the hardware initialization component and start the computer device.
[0110] S705, if the DPU's initialization status is not found to be complete within the preset initialization time, sends a start signal to the target component and a start signal to the hardware initialization component to instruct the hardware initialization component to start the initialization of the power-on component corresponding to the hardware initialization component, start the computer device, and make the computer device unable to perform the device functions provided by the DPU after startup.
[0111] The specific implementation methods of S701-S705 are the same as those in the above method embodiments, and will not be repeated here.
[0112] It should be understood that although the steps in the flowcharts of the embodiments described above are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the embodiments described above may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages in other steps. It is understood that the steps in different embodiments can be freely combined as needed, and all non-contradictory solutions formed by such combinations are within the scope of protection of this application.
[0113] Based on the same inventive concept, the embodiments of the present application also provide a device booting apparatus for implementing the device booting method described above. The implementation scheme for solving the problem provided by the apparatus is similar to the implementation scheme described in the method, so the specific limitations in one or more device booting apparatus embodiments provided below can refer to the limitations of the device booting method described above, which will not be repeated here.
[0114] In one exemplary embodiment, as shown in Figure 8 A device booting apparatus is provided, applied to a baseboard management controller of a computer device, comprising a first signal sending module 810 and a second signal sending module 820, wherein:
[0115] The first signal sending module 810 is configured to, in response to a booting instruction, send a stop signal to a target component in the computer device after initialization of the baseboard management controller is completed, wherein the target component comprises a power control component or a hardware initialization component, and the stop signal is used to instruct the target component to stop performing a booting action on a booting component corresponding to the target component in the computer device;
[0116] The second signal sending module 820 is configured to query an initialization state of a data processing unit (DPU) in the computer device, and send a start signal to the target component in a case where the initialization state of the DPU is initialization completed, wherein the start signal is used to instruct the target component to start performing a booting action on the booting component corresponding to the target component, so as to start the computer device.
[0117] In one exemplary embodiment, the target component comprises the power control component, the booting component corresponding to the target component is a component powered by the power control component, the stop signal is used to instruct the power control component to stop powering the booting component corresponding to the power control component, and the start signal is used to instruct the power control component to start powering the booting component corresponding to the power control component; or,
[0118] The target component comprises the hardware initialization component, the booting component corresponding to the target component is a component initialized by the hardware initialization component, the stop signal is used to instruct the hardware initialization component to stop initializing the booting component corresponding to the hardware initialization component, and the start signal is used to instruct the hardware initialization component to start initializing the booting component corresponding to the hardware initialization component.
[0119] In an example embodiment, the target component includes the hardware initialization component; the first signal sending module 810 is specifically configured to: in the case that the DPU state query request sent by the hardware initialization component is received and it is queried that the initialization state of the DPU is initialization not completed, a stop signal is sent to the target component in the computer device.
[0120] In an example embodiment, the second signal sending module 820 is specifically configured to:
[0121] In the preset initialization duration, the initialization state of the data processing unit DPU in the computer device is queried;
[0122] In the case that the initialization state of the DPU is queried as initialization completed, a start signal is sent to the target component.
[0123] In an example embodiment, the device startup apparatus further includes:
[0124] The first forced startup module is configured to: in the case that the initialization state of the DPU is not queried as initialization completed within the preset initialization duration, a start signal is sent to the target component; wherein the computer device after starting cannot realize the device function provided by the DPU.
[0125] In an example embodiment, the first signal sending module 810 is specifically configured to:
[0126] In the case that the startup instruction is generated based on the triggering operation of the physical startup key of the computer device, in response to the startup instruction, after the initialization of the baseboard management controller is completed, a stop signal is sent to the target component in the computer device.
[0127] In an example embodiment, the device startup apparatus further includes:
[0128] The second forced startup module is configured to: in the case that the startup instruction is sent by the designated device through the reserved communication interface of the baseboard management controller, in response to the startup instruction, after the initialization of the baseboard management controller is completed, a start signal is sent to the target component; wherein the computer device after starting cannot realize the device function provided by the DPU.
[0129] The above-mentioned various modules in the device startup apparatus can be all or part realized by software, hardware and their combination. The above-mentioned various modules can be embedded in or independent of the processor in the computer device in hardware form, or can be stored in the memory in the computer device in software form, so as to call and execute the operation corresponding to the above-mentioned various modules by the processor.
[0130] In one exemplary embodiment, a computer device is provided, which may be a server, and its internal structure diagram may be as follows: Figure 9 As shown, this computer device includes a processor, memory, input / output interfaces (I / O), and a communication interface. The processor, memory, and I / O interfaces are connected via a system bus, and the communication interface is also connected to the system bus via the I / O interfaces. The processor provides computing and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system, computer programs, and a database. The internal memory provides the environment for the operating system and computer programs stored in the non-volatile storage media. The database stores data such as the initialization status of the DPU. The I / O interfaces are used for exchanging information between the processor and external devices. The communication interface is used for communicating with external terminals via a network connection. When the computer program is executed by the processor, it implements a device power-on method.
[0131] Those skilled in the art will understand that Figure 9 The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.
[0132] In one exemplary embodiment, a computer device is provided, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps in the above-described method embodiments.
[0133] In one embodiment, a computer-readable storage medium is provided having a computer program stored thereon, which, when executed by a processor, implements the steps in the above method embodiments.
[0134] In one embodiment, a computer program product is provided, including a computer program that, when executed by a processor, implements the steps in the above method embodiments.
[0135] Those skilled in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be completed by instructing the relevant hardware through a computer program. The computer program can be stored in a non-volatile computer readable storage medium, and when executed, can include the processes of the above-mentioned embodiment methods. Any reference to memory, database or other medium used in the embodiments provided in the present application can include at least one of non-volatile memory and volatile memory. The non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical storage, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetoresistive random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. The volatile memory can include random access memory (RAM) or external cache memory, etc. As an illustration but not limitation, the RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM), etc. The database involved in the embodiments provided in the present application can include at least one of a relational database and a non-relational database. The non-relational database can include a distributed database based on a block chain, etc., without being limited thereto. The processor involved in the embodiments provided in the present application can be a general-purpose processor, a central processing unit, a graphics processing unit, a digital signal processor, a programmable logic device, a data processing logic device based on quantum computing, an artificial intelligence (AI) processor, etc., without being limited thereto.
[0136] The technical features of the above embodiments can be combined in any manner. To make the description concise, not all possible combinations of the technical features in the above embodiments are described, but as long as the combinations of the technical features do not exist contradictions, they should be considered as the scope of the present application.
[0137] The above-described embodiments are merely illustrative of several embodiments of the present application, and the description is relatively specific and detailed, but should not be understood as a limitation on the scope of the patent. It should be noted that for those skilled in the art, without departing from the concept of the present application, a number of modifications and improvements can be made, which are all within the scope of the present application. Therefore, the scope of protection of the present application should be subject to the appended claims.
Claims
1. A method for starting up a device, characterized by, A method for a baseboard management controller (BMC) applied to a computer device, the method comprising: in response to a power-on instruction, sending a stop signal to a target component in the computer device after initialization of the BMC is completed, wherein the target component comprises a power supply control component or a hardware initialization component, and the stop signal is used to instruct the target component to stop performing a power-on action on a power-on component corresponding to the target component in the computer device; inquiring an initialization state of a data processing unit (DPU) in the computer device, and sending a start signal to the target component in a case where the initialization state of the DPU is inquired to be completed; wherein the start signal is used to instruct the target component to start performing a power-on action on the power-on component corresponding to the target component, so as to start the computer device.
2. The method of claim 1, wherein, the target component comprises the power supply control component, the power-on component corresponding to the target component is a component powered by the power supply control component, the stop signal is used to instruct the power supply control component to stop powering the power-on component corresponding to the power supply control component, and the start signal is used to instruct the power supply control component to start powering the power-on component corresponding to the power supply control component; or the target component comprises the hardware initialization component, the power-on component corresponding to the target component is a component initialized by the hardware initialization component, the stop signal is used to instruct the hardware initialization component to stop initializing the power-on component corresponding to the hardware initialization component, and the start signal is used to instruct the hardware initialization component to start initializing the power-on component corresponding to the hardware initialization component.
3. The method of claim 2, wherein, the target component comprises the hardware initialization component; and the sending of the stop signal to the target component in the computer device comprises: in a case where the DPU state query request sent by the hardware initialization component is received and the initialization state of the DPU is inquired to be not completed, the stop signal is sent to the target component in the computer device.
4. The method according to any one of claims 1 to 3, characterized in that, the inquiring of the initialization state of the DPU in the computer device and the sending of the start signal to the target component in a case where the initialization state of the DPU is inquired to be completed comprise: inquiring the initialization state of the DPU in the computer device within a preset initialization time period; in a case where the initialization state of the DPU is inquired to be completed, the start signal is sent to the target component.
5. The method of claim 4, wherein, the method further comprises: in a case where the initialization state of the DPU is not inquired to be completed within the preset initialization time period, the start signal is sent to the target component; wherein the computer device after starting cannot realize a device function provided by the DPU.
6. The method of claim 1, wherein, the sending of the stop signal to the target component in the computer device after the initialization of the BMC is completed in response to the power-on instruction comprises: In a case that the start-up instruction is generated based on a triggering operation of a physical start-up button of the computer device, in response to the start-up instruction, after initialization of the baseboard management controller is completed, a stop signal is sent to a target component in the computer device.
7. The method of claim 6, wherein, The method further includes: In a case that the start-up instruction is sent by a designated device through a reserved communication interface of the baseboard management controller, in response to the start-up instruction, after initialization of the baseboard management controller is completed, a start signal is sent to the target component; wherein the computer device after starting cannot realize a device function provided by the DPU.
8. An apparatus for booting a device, the apparatus comprising: A baseboard management controller applied to a computer device, the apparatus includes: A first signal sending module, configured to, in response to a start-up instruction, after initialization of the baseboard management controller is completed, send a stop signal to a target component in the computer device; wherein the target component includes a power supply control component or a hardware initialization component, and the stop signal is used to instruct the target component to stop performing a start-up action on a start-up component corresponding to the target component in the computer device; A second signal sending module, configured to query an initialization state of a data processing unit (DPU) in the computer device, and in a case that the initialization state of the DPU is initialization completion, send a start signal to the target component; wherein the start signal is used to instruct the target component to start performing a start-up action on the start-up component corresponding to the target component, so as to start the computer device. 9.A computer device, comprising a memory and a processor, wherein the memory stores a computer program, and the computer device is configured to perform the method according to any one of claims 1-8 when the computer program is executed by the processor. The processor executes the computer program to implement the steps of the method in any one of claims 1 to 7.
10. A computer-readable storage medium having stored thereon a computer program, characterized in that, The computer program is executed by the processor to implement the steps of the method in any one of claims 1 to 7.
Citation Information
Patent Citations
PCIE (Peripheral Component Interface Express) equipment switching system, method and device, computer equipment and storage medium
CN114817107A
Operation system updating method and device and computer equipment
CN116627468A
BIOS (Basic Input Output System) starting method and device, storage medium and electronic equipment
CN118965367A
Configuration method and device of access control function, equipment and storage medium
CN119225847A
Energization starting method and apparatus for PCIE device, and chip and electronic device
WO2024230148A1