CN114047958A - Starting method, equipment and medium for baseboard management controller of server - Google Patents
Starting method, equipment and medium for baseboard management controller of server Download PDFInfo
- Publication number
- CN114047958A CN114047958A CN202111278957.9A CN202111278957A CN114047958A CN 114047958 A CN114047958 A CN 114047958A CN 202111278957 A CN202111278957 A CN 202111278957A CN 114047958 A CN114047958 A CN 114047958A
- Authority
- CN
- China
- Prior art keywords
- program
- loading
- starting
- management controller
- special mark
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4411—Configuring for operating with peripheral devices; Loading of device drivers
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
A starting method of a baseboard management controller of a server comprises the following steps: loading a first starting program from a first storage chip; responding to the successful loading of the first starting program, and loading a second starting program of the baseboard management controller of the server in a sectional mode based on the first starting program; and in response to the failure of the second starting program of the segmented loading server baseboard management controller, writing the failed segment point into a first parameter area of the first starting program in the first storage chip, and restarting the baseboard management controller of the server through the first starting program in the second storage chip. The method for storing and starting the firmware of the substrate management controller of the server is based on a server hardware architecture, double-SPI Flash external chip selection watchdog is added, a boot partition is matched with a firmware boot partition to start a bootstrap program, double-partition redundancy backup of the firmware of the substrate management controller is completed, safety and stability of the firmware of the substrate management controller are greatly improved, and the method has positive significance for fault tolerance of server operation.
Description
Technical Field
The invention belongs to the field of computers, and particularly relates to a starting method, equipment and a medium of a baseboard management controller of a server.
Background
The invention provides a firmware storing and starting method of a baseboard management controller, which can ensure that the baseboard management controller can reliably and stably run in the running and starting stages, and avoid the problem that a server cannot normally run due to the failure of starting or abnormal running of the baseboard management controller caused by software and hardware faults. The SPI controller is an interface for the substrate management controller to communicate with external Flash, the substrate management controller can access Flash data through the interface, and firmware of the substrate management controller is usually stored in Flash. The complete firmware data is often divided into a plurality of areas, which usually include boot areas, conf areas, root areas, and the like, and different areas correspond to different functions of the bmc. However, in the boot process of the prior art, the boot failure is caused by the loading problem of any one area. Although there are a plurality of Flash memories, a restart operation is required for the board management controller at the time of startup.
Therefore, a new method for starting the bmc of the server is needed to solve the above problems.
Disclosure of Invention
In order to solve the above problems, the present invention provides a method for starting a baseboard management controller of a server, including:
loading a first starting program from a first storage chip;
in response to the first boot program loading being successful, loading a second boot program of a baseboard management controller of the server in a segmented manner based on the first boot program;
in response to failure of a second starting program of the server baseboard management controller loaded in a segmented mode, writing the failed segmentation point into a first parameter area of the first starting program in the first storage chip, and restarting the baseboard management controller of the server through the first starting program in the second storage chip.
In some embodiments of the present invention, the step of loading the second boot program of the baseboard management controller of the server based on the first boot program in a segment comprises:
segmenting the second starting program according to the function type;
generating a special mark of the second starting program of any section before loading the second starting program of the section;
writing the special mark into the first parameter area of the first boot program;
in response to successful loading of the segmented second boot program, deleting the special token of the segmented second boot program from the first parameter area.
In some embodiments of the invention, the method further comprises:
responding to the successful loading of the first starting program, and judging whether the special mark exists in the first parameter area of the first starting program in the first storage chip or not;
and responding to the existence of the special mark, switching the baseboard management controller to the second storage chip and restarting the baseboard management controller.
In some embodiments of the present invention, writing the special mark to the first parameter area of the first startup procedure further comprises:
and acquiring the address of the segmented second starting program represented by the special mark in a second memory chip, and storing the address in a second parameter area of the first starting program in the first memory chip.
In some embodiments of the invention, the method further comprises:
responding to the successful loading of the first starting program, and judging whether the special mark exists in the first parameter area of the first starting program in the first storage chip or not;
and when the first boot program loads a second boot program represented by the special mark, loading the second boot program from the second storage chip according to the address in the second parameter area.
In some embodiments of the invention, the method further comprises:
in response to the first startup program being successfully loaded, respectively acquiring the second startup program from the first memory chip and the second memory chip, and comparing the second startup program acquired from the first memory chip and the second memory chip;
in response to that the results of comparing the second startup programs acquired from the first memory chip and the second memory chip are different, determining the loading results of the different second startup programs;
and in response to the successful loading of the second boot program, saving the special mark of the second boot program to a first parameter area of the first boot program of the second memory chip.
In some embodiments of the invention, the method further comprises:
and in response to the loading failure of the second boot program, saving the special mark of the second boot program to a first parameter area of the first boot program of the first storage chip, and loading the second boot program from the second storage chip.
In some embodiments of the invention, the method further comprises:
responding to the successful loading of the first startup program, acquiring the corresponding special mark from the first parameter area in the first startup program, and responding to the second startup program represented by the special mark in the first storage chip, and loading the second startup program represented by the special mark from the second storage chip; and
and loading the second starting program represented by the special mark from the first storage chip in response to the second starting program represented by the special mark in the second storage chip.
Another aspect of the present invention further provides a computer device, including:
at least one processor; and
a memory storing computer instructions executable on the processor, the instructions when executed by the processor implementing the steps of the method of any one of the above embodiments.
In yet another aspect, the present invention further provides a computer-readable storage medium, which stores a computer program, wherein the computer program is configured to implement the steps of the method according to any one of the above embodiments when executed by a processor.
The method for storing and starting the firmware of the substrate management controller of the server is based on a server hardware architecture, double-SPI Flash external chip selection watchdog is added, a boot partition is matched with a firmware boot partition to start a bootstrap program, double-partition redundancy backup of the firmware of the substrate management controller is completed, safety and stability of the firmware of the substrate management controller are greatly improved, and the method has positive significance for fault tolerance of server operation.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, it is obvious that the drawings in the following description are only some embodiments of the present invention, and for those skilled in the art, other drawings can be obtained according to the drawings without creative efforts.
Fig. 1 is a flowchart of a method for starting a baseboard management controller of a server according to an embodiment of the present invention;
FIG. 2 is a block diagram of a computer device according to an embodiment of the present invention;
FIG. 3 is a schematic diagram of a computer-readable storage medium according to an embodiment of the present invention;
fig. 4 is a schematic structural diagram of a baseboard management controller of a server according to an embodiment of the present invention;
fig. 5 is a schematic structural diagram of a baseboard management controller of a server according to an embodiment of the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention more apparent, the following embodiments of the present invention are described in further detail with reference to the accompanying drawings.
It should be noted that all expressions using "first" and "second" in the embodiments of the present invention are used for distinguishing two entities with the same name but different names or different parameters, and it should be noted that "first" and "second" are merely for convenience of description and should not be construed as limitations of the embodiments of the present invention, and they are not described in any more detail in the following embodiments.
As shown in fig. 1, a first aspect of an embodiment of the present invention provides a method for starting a baseboard management controller of a server, including:
step S1, loading a first startup program from the first memory chip;
step S2, responding to the successful loading of the first startup program, and loading a second startup program of a baseboard management controller of the server in a segmented mode based on the first startup program;
step S3, in response to failure of the second boot program for the server baseboard management controller, writing the failed segment point into the first parameter area of the first boot program in the first memory chip, and restarting the baseboard management controller of the server through the first boot program in the second memory chip.
In the present invention, what the present invention is to solve is a problem of a failure in a starting process of a server baseboard management controller (hereinafter abbreviated as BMC), fig. 4 shows a configuration reference diagram of the server baseboard management controller in a server of the present invention, firmware issued by the server baseboard management controller is stored in an SPI Flash external to the BMC of the server, in order to improve reliability of the firmware, two flashes are currently mounted on the BMC SPI controller in an SPI Flash redundancy manner, and firmware starting and loading are realized in an SPI CS chip selection manner. A hardware watchdog CS chip selection mechanism is added on hardware, a hardware chip selection watchdog is started after the BMC is powered on, a CS chip selection signal is automatically switched when the watchdog is overtime, the function that the BMC loads firmware data from different flashes is realized, BMC firmware contents stored in two SPI flashes are completely the same, and a physical redundancy mode is used, so that the problem of BMC failure caused by hardware failure is effectively solved.
In the embodiment of the present invention, in step S1, when the BMC is started, a boot loader of about 8K is read from the SPI Flash1 by using the strobe SPI Flash1 with the default configuration of the CS watchdog in the default case;
in step S2, after the boot program is loaded to the BMC, the boot program starts to run, and other subsequent functional programs of the BMC are loaded. When loading other subsequent functional programs of the BMC, loading other functional programs in a sectional mode;
in step S3, if the boot loader needs to determine whether the boot loader has been successfully installed in any of the other loaded function programs, if the boot loader has failed to be installed, the boot loader is marked as having failed to be installed and stored in the configuration parameter area of the boot loader stored in the SPIFlash1, so as to mark that the boot loader has failed to be executed when being loaded by using SPIFlash1, and the BMC is restarted and reloaded.
In some embodiments of the present invention, after the BMC is restarted after failing to boot up due to the use of the SPIFlash1, the BMC then starts to perform the load from the 8KB boot loader in the SPIFlash 1. And after the boot program loads and finishes reading the relevant configuration parameters of the configuration parameter area of the boot program, if a starting failure mark which is saved in the previous starting process and uses SPIFlash1 is found, the boot program controls the CS watchdog to gate the SPIFlash2, and then the hot restart BMC starts the BMC from the SPIFlash 2.
In some embodiments of the present invention, the step of loading the second boot program of the baseboard management controller of the server based on the first boot program in a segment comprises:
segmenting the second starting program according to the function type;
generating a special mark of the second starting program of any section before loading the second starting program of the section;
writing the special mark into the first parameter area of the first boot program;
in response to successful loading of the segmented second boot program, deleting the special token of the segmented second boot program from the first parameter area.
In this embodiment, in the process of writing the flag into the configuration parameter area of the boot program of the BMC, the flag is not written after the corresponding segmented functional program is written separately, but before the corresponding functional program is loaded, the special flag of the functional program is generated and written into the configuration parameter area of the boot program. When the functional program is loaded, the boot bootstrap program deletes the special mark which is stored previously and represents the functional program. If the function program fails to be loaded, the boot program may be jammed or the device may be restarted by the interrupt of the BMC, and the special mark cannot be modified, so that the special mark is just saved.
In some embodiments of the invention, the method further comprises:
responding to the successful loading of the first starting program, and judging whether the special mark exists in the first parameter area of the first starting program in the first storage chip or not;
and responding to the existence of the special mark, switching the baseboard management controller to the second storage chip and restarting the baseboard management controller.
In this embodiment, if when the BMC is started, the CS watchdog gates the SPIFlash1 in the default condition, and after the boot program of the SPIFlash1 is loaded, the boot program reads the configuration parameters of the corresponding configuration area, and finds that there is a fault flag, the CS watchdog gates the SPIFlash2, and the BMC is restarted from the boot program in the SPIFlash 2.
In some embodiments of the present invention, writing the special mark to the first parameter area of the first startup procedure further comprises:
and acquiring the address of the segmented second starting program represented by the special mark in a second memory chip, and storing the address in a second parameter area of the first starting program in the first memory chip.
In this embodiment, as in the process of starting the BMC in SPIFlash1, if the boot program in SPIFlash1 fails to start the related function program in the BMC, the corresponding point of function failure is also saved in the configuration parameters of the boot program.
In some embodiments of the invention, the method further comprises:
responding to the successful loading of the first starting program, and judging whether the special mark exists in the first parameter area of the first starting program in the first storage chip or not;
and when the first boot program loads a second boot program represented by the special mark, loading the second boot program from the second storage chip according to the address in the second parameter area.
In this embodiment, during the boot process of the BMC, the boot loader passes through the program on the SPIFlash1, and the configuration parameter of the boot loader has a special mark of the corresponding function program, and in this case, the firmware program corresponding to the function program in the corresponding SPIFlash2 can be read by another SPI controller 2 in the structure shown in fig. 5.
In some embodiments of the invention, the method further comprises:
in response to the first startup program being successfully loaded, respectively acquiring the second startup program from the first memory chip and the second memory chip, and comparing the second startup program acquired from the first memory chip and the second memory chip;
in response to the comparison result of the second starting programs obtained from the first storage chip and the second storage chip being different, judging the loading result of the different second starting programs;
and in response to the successful loading of the second boot program, saving the special mark of the second boot program to a first parameter area of the first boot program of the second memory chip.
In this embodiment, as shown in fig. 5, the BMC obtains the started firmware programs from SPIFlash1 and SPIFlash2 at the same time, but preferentially loads the boot program in SPIFlash1, and compares the obtained programs in the two flashes one by one, and when the comparison result is different, it may indicate that 1 firmware program has a problem (it may be that the stored data is damaged, or a write error occurs when data is written), and at this time, preferentially loads the functional program of SPIFlash 1. If the loading fails, it indicates that the data of the firmware of the functional program in SPIFlash1 is damaged, if the loading succeeds, it indicates that the data of the firmware of the functional program in SPIFlash2 is damaged, and if the program in SPIFlash1 is damaged, the special flag of the functional program is saved (not deleted) in the configuration parameter area of the boot loader in SPIFlash 1. Similarly, if a problem occurs in the program in SPIFlash2, the special flag of the function program is saved (not deleted) in the configuration parameter area of the boot loader in SPIFlash 2.
In some embodiments of the invention, the method further comprises:
and in response to the loading failure of the second boot program, saving the special mark of the second boot program to a first parameter area of the first boot program of the first storage chip, and loading the second boot program from the second storage chip.
In some embodiments of the invention, the method further comprises:
responding to the successful loading of the first startup program, acquiring the corresponding special mark from the first parameter area in the first startup program, and responding to the second startup program represented by the special mark in the first storage chip, and loading the second startup program represented by the special mark from the second storage chip; and
and loading the second starting program represented by the special mark from the first storage chip in response to the second starting program represented by the special mark in the second storage chip.
In this embodiment, as shown in the configuration structure of the BMC shown in fig. 5, the BMC includes two SPI controllers, i.e., SPI controller 1 and SPI controller 2, and if the firmware of the functional programs in spilash 1 and spilash 2 has a problem, the corresponding firmware programs can be read in a manner of being combined from the two spilash respectively when the BMC is started, so as to achieve the stability of the start of the BMC. As long as two SPIFlash do not have the fault of the functional programs at the same position at the same time, the stable start of the BMC can be realized.
The method for storing and starting the firmware of the substrate management controller of the server is based on a server hardware architecture, double-SPI Flash external chip selection watchdog is added, a boot partition is matched with a firmware boot partition to start a bootstrap program, double-partition redundancy backup of the firmware of the substrate management controller is completed, safety and stability of the firmware of the substrate management controller are greatly improved, and the method has positive significance for fault tolerance of server operation.
As shown in fig. 2, another aspect of the present invention also provides a computer device, including:
at least one processor 21; and
a memory 22 storing computer instructions 23 executable on the processor, the instructions 23 when executed by the processor 21 implementing a method for starting a baseboard management controller of a server, comprising:
loading a first starting program from a first storage chip;
in response to the first boot program loading being successful, loading a second boot program of a baseboard management controller of the server in a segmented manner based on the first boot program;
in response to failure of a second starting program of the server baseboard management controller loaded in a segmented mode, writing the failed segmentation point into a first parameter area of the first starting program in the first storage chip, and restarting the baseboard management controller of the server through the first starting program in the second storage chip.
In some embodiments of the present invention, the step of loading the second boot program of the baseboard management controller of the server based on the first boot program in a segment comprises:
segmenting the second starting program according to the function type;
generating a special mark of the second starting program of any section before loading the second starting program of the section;
writing the special mark into the first parameter area of the first boot program;
in response to successful loading of the segmented second boot program, deleting the special token of the segmented second boot program from the first parameter area.
In some embodiments of the invention, the method further comprises:
responding to the successful loading of the first starting program, and judging whether the special mark exists in the first parameter area of the first starting program in the first storage chip or not;
and responding to the existence of the special mark, switching the baseboard management controller to the second storage chip and restarting the baseboard management controller.
In some embodiments of the present invention, writing the special mark to the first parameter area of the first startup procedure further comprises:
and acquiring the address of the segmented second starting program represented by the special mark in a second memory chip, and storing the address in a second parameter area of the first starting program in the first memory chip.
In some embodiments of the invention, the method further comprises:
responding to the successful loading of the first starting program, and judging whether the special mark exists in the first parameter area of the first starting program in the first storage chip or not;
and when the first boot program loads a second boot program represented by the special mark, loading the second boot program from the second storage chip according to the address in the second parameter area.
In some embodiments of the invention, the method further comprises:
in response to the first startup program being successfully loaded, respectively acquiring the second startup program from the first memory chip and the second memory chip, and comparing the second startup program acquired from the first memory chip and the second memory chip;
in response to the comparison result of the second starting programs obtained from the first storage chip and the second storage chip being different, judging the loading result of the different second starting programs;
and in response to the successful loading of the second boot program, saving the special mark of the second boot program to a first parameter area of the first boot program of the second memory chip.
In some embodiments of the invention, the method further comprises:
and in response to the loading failure of the second boot program, saving the special mark of the second boot program to a first parameter area of the first boot program of the first storage chip, and loading the second boot program from the second storage chip.
In some embodiments of the invention, the method further comprises:
responding to the successful loading of the first startup program, acquiring the corresponding special mark from the first parameter area in the first startup program, and responding to the second startup program represented by the special mark in the first storage chip, and loading the second startup program represented by the special mark from the second storage chip; and
and loading the second starting program represented by the special mark from the first storage chip in response to the second starting program represented by the special mark in the second storage chip.
As shown in fig. 3, a further aspect of the present invention also provides a computer-readable storage medium 401, where the computer-readable storage medium 401 stores a computer program 402, and when executed by a processor, the computer program 402 implements a method for starting a baseboard management controller of a server, including:
loading a first starting program from a first storage chip;
in response to the first boot program loading being successful, loading a second boot program of a baseboard management controller of the server in a segmented manner based on the first boot program;
in response to failure of a second starting program of the server baseboard management controller loaded in a segmented mode, writing the failed segmentation point into a first parameter area of the first starting program in the first storage chip, and restarting the baseboard management controller of the server through the first starting program in the second storage chip.
In some embodiments of the present invention, the step of loading the second boot program of the baseboard management controller of the server based on the first boot program in a segment comprises:
segmenting the second starting program according to the function type;
generating a special mark of the second starting program of any section before loading the second starting program of the section;
writing the special mark into the first parameter area of the first boot program;
in response to successful loading of the segmented second boot program, deleting the special token of the segmented second boot program from the first parameter area.
In some embodiments of the invention, the method further comprises:
responding to the successful loading of the first starting program, and judging whether the special mark exists in the first parameter area of the first starting program in the first storage chip or not;
and responding to the existence of the special mark, switching the baseboard management controller to the second storage chip and restarting the baseboard management controller.
In some embodiments of the present invention, writing the special mark to the first parameter area of the first startup procedure further comprises:
and acquiring the address of the segmented second starting program represented by the special mark in a second memory chip, and storing the address in a second parameter area of the first starting program in the first memory chip.
In some embodiments of the invention, the method further comprises:
responding to the successful loading of the first starting program, and judging whether the special mark exists in the first parameter area of the first starting program in the first storage chip or not;
and when the first boot program loads a second boot program represented by the special mark, loading the second boot program from the second storage chip according to the address in the second parameter area.
In some embodiments of the invention, the method further comprises:
in response to the first startup program being successfully loaded, respectively acquiring the second startup program from the first memory chip and the second memory chip, and comparing the second startup program acquired from the first memory chip and the second memory chip;
in response to the comparison result of the second starting programs obtained from the first storage chip and the second storage chip being different, judging the loading result of the different second starting programs;
and in response to the successful loading of the second boot program, saving the special mark of the second boot program to a first parameter area of the first boot program of the second memory chip.
In some embodiments of the invention, the method further comprises:
and in response to the loading failure of the second boot program, saving the special mark of the second boot program to a first parameter area of the first boot program of the first storage chip, and loading the second boot program from the second storage chip.
In some embodiments of the invention, the method further comprises:
responding to the successful loading of the first startup program, acquiring the corresponding special mark from the first parameter area in the first startup program, and responding to the second startup program represented by the special mark in the first storage chip, and loading the second startup program represented by the special mark from the second storage chip; and
and loading the second starting program represented by the special mark from the first storage chip in response to the second starting program represented by the special mark in the second storage chip.
The foregoing is an exemplary embodiment of the present disclosure, but it should be noted that various changes and modifications could be made herein without departing from the scope of the present disclosure as defined by the appended claims. The functions, steps and/or actions of the method claims in accordance with the disclosed embodiments described herein need not be performed in any particular order. Furthermore, although elements of the disclosed embodiments of the invention may be described or claimed in the singular, the plural is contemplated unless limitation to the singular is explicitly stated.
It should be understood that, as used herein, the singular forms "a", "an" and "the" are intended to include the plural forms as well, unless the context clearly supports the exception. It should also be understood that "and/or" as used herein is meant to include any and all possible combinations of one or more of the associated listed items.
The numbers of the embodiments disclosed in the embodiments of the present invention are merely for description, and do not represent the merits of the embodiments.
It will be understood by those skilled in the art that all or part of the steps for implementing the above embodiments may be implemented by hardware, or may be implemented by a program instructing relevant hardware, where the program may be stored in a computer-readable storage medium, and the above-mentioned storage medium may be a read-only memory, a magnetic disk or an optical disk, etc.
Those of ordinary skill in the art will understand that: the discussion of any embodiment above is meant to be exemplary only, and is not intended to intimate that the scope of the disclosure, including the claims, of embodiments of the invention is limited to these examples; within the idea of an embodiment of the invention, also technical features in the above embodiment or in different embodiments may be combined and there are many other variations of the different aspects of an embodiment of the invention as described above, which are not provided in detail for the sake of brevity. Therefore, any omissions, modifications, substitutions, improvements, and the like that may be made without departing from the spirit and principles of the embodiments of the present invention are intended to be included within the scope of the embodiments of the present invention.
Claims (10)
1. A method for starting a baseboard management controller of a server is characterized by comprising the following steps:
loading a first starting program from a first storage chip;
in response to the first boot program loading being successful, loading a second boot program of a baseboard management controller of the server in a segmented manner based on the first boot program;
in response to failure of a second starting program of the server baseboard management controller loaded in a segmented mode, writing the failed segmentation point into a first parameter area of the first starting program in the first storage chip, and restarting the baseboard management controller of the server through the first starting program in the second storage chip.
2. The method of claim 1, wherein the step of segment loading a second boot program of a baseboard management controller of the server based on the first boot program comprises:
segmenting the second starting program according to the function type;
generating a special mark of the second starting program of any section before loading the second starting program of the section;
writing the special mark into the first parameter area of the first boot program;
in response to successful loading of the segmented second boot program, deleting the special token of the segmented second boot program from the first parameter area.
3. The method of claim 2, further comprising:
responding to the successful loading of the first starting program, and judging whether the special mark exists in the first parameter area of the first starting program in the first storage chip or not;
and responding to the existence of the special mark, switching the baseboard management controller to the second storage chip and restarting the baseboard management controller.
4. The method according to claim 2, wherein said writing said special mark to said first parameter area of said first boot program further comprises:
and acquiring the address of the segmented second starting program represented by the special mark in a second memory chip, and storing the address in a second parameter area of the first starting program in the first memory chip.
5. The method of claim 3, further comprising:
responding to the successful loading of the first starting program, and judging whether the special mark exists in the first parameter area of the first starting program in the first storage chip or not;
and when the first boot program loads a second boot program represented by the special mark, loading the second boot program from the second storage chip according to the address in the second parameter area.
6. The method of claim 2, further comprising:
in response to the first startup program being successfully loaded, respectively acquiring the second startup program from the first memory chip and the second memory chip, and comparing the second startup program acquired from the first memory chip and the second memory chip;
in response to that the results of comparing the second startup programs acquired from the first memory chip and the second memory chip are different, determining the loading results of the different second startup programs;
and in response to the successful loading of the second boot program, saving the special mark of the second boot program to a first parameter area of the first boot program of the second memory chip.
7. The method of claim 6, further comprising:
and in response to the loading failure of the second boot program, saving the special mark of the second boot program to a first parameter area of the first boot program of the first storage chip, and loading the second boot program from the second storage chip.
8. The method of claim 7, further comprising:
responding to the successful loading of the first startup program, acquiring the corresponding special mark from the first parameter area in the first startup program, and responding to the second startup program represented by the special mark in the first storage chip, and loading the second startup program represented by the special mark from the second storage chip; and
and loading the second starting program represented by the special mark from the first storage chip in response to the second starting program represented by the special mark in the second storage chip.
9. A computer device, comprising:
at least one processor; and
a memory storing computer instructions executable on the processor, the instructions when executed by the processor implementing the steps of the method of any one of claims 1 to 8.
10. A computer-readable storage medium, in which a computer program is stored which, when being executed by a processor, carries out the steps of the method according to any one of claims 1 to 8.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111278957.9A CN114047958B (en) | 2021-10-31 | 2021-10-31 | Starting method, equipment and medium of baseboard management controller of server |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111278957.9A CN114047958B (en) | 2021-10-31 | 2021-10-31 | Starting method, equipment and medium of baseboard management controller of server |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114047958A true CN114047958A (en) | 2022-02-15 |
CN114047958B CN114047958B (en) | 2023-07-14 |
Family
ID=80206468
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111278957.9A Active CN114047958B (en) | 2021-10-31 | 2021-10-31 | Starting method, equipment and medium of baseboard management controller of server |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114047958B (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114661368A (en) * | 2022-05-19 | 2022-06-24 | 中昊芯英(杭州)科技有限公司 | Chip and starting method thereof |
CN114860322A (en) * | 2022-04-20 | 2022-08-05 | 联想(北京)信息技术有限公司 | Substrate management controller, control method and electronic equipment |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103186393A (en) * | 2011-12-30 | 2013-07-03 | 鸿富锦精密工业(深圳)有限公司 | Electronic device with substrate management controller firmware and firmware loading method |
WO2016101712A1 (en) * | 2014-12-22 | 2016-06-30 | 小米科技有限责任公司 | Firmware recovery method, device and terminal |
CN105785856A (en) * | 2016-02-26 | 2016-07-20 | 西安电子科技大学 | Program dynamic segment loading device and method based on bomb-borne application |
US20170322816A1 (en) * | 2016-05-04 | 2017-11-09 | American Megatrends, Inc. | Bmc firmware recovery |
US20190079748A1 (en) * | 2017-09-12 | 2019-03-14 | Mitac Computing Technology Corporation | Server with double-firmware storage space and firmware update method therefor |
CN110908847A (en) * | 2019-11-22 | 2020-03-24 | 苏州浪潮智能科技有限公司 | Abnormity recovery method, system, electronic equipment and storage medium |
CN112579338A (en) * | 2020-12-30 | 2021-03-30 | 浪潮电子信息产业股份有限公司 | Starting method and system of equipment and storage medium |
CN113377425A (en) * | 2021-06-29 | 2021-09-10 | 南昌华勤电子科技有限公司 | BMC firmware generation method and device, BMC starting method and device and storage medium |
-
2021
- 2021-10-31 CN CN202111278957.9A patent/CN114047958B/en active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103186393A (en) * | 2011-12-30 | 2013-07-03 | 鸿富锦精密工业(深圳)有限公司 | Electronic device with substrate management controller firmware and firmware loading method |
WO2016101712A1 (en) * | 2014-12-22 | 2016-06-30 | 小米科技有限责任公司 | Firmware recovery method, device and terminal |
CN105785856A (en) * | 2016-02-26 | 2016-07-20 | 西安电子科技大学 | Program dynamic segment loading device and method based on bomb-borne application |
US20170322816A1 (en) * | 2016-05-04 | 2017-11-09 | American Megatrends, Inc. | Bmc firmware recovery |
US20190079748A1 (en) * | 2017-09-12 | 2019-03-14 | Mitac Computing Technology Corporation | Server with double-firmware storage space and firmware update method therefor |
CN110908847A (en) * | 2019-11-22 | 2020-03-24 | 苏州浪潮智能科技有限公司 | Abnormity recovery method, system, electronic equipment and storage medium |
CN112579338A (en) * | 2020-12-30 | 2021-03-30 | 浪潮电子信息产业股份有限公司 | Starting method and system of equipment and storage medium |
CN113377425A (en) * | 2021-06-29 | 2021-09-10 | 南昌华勤电子科技有限公司 | BMC firmware generation method and device, BMC starting method and device and storage medium |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114860322A (en) * | 2022-04-20 | 2022-08-05 | 联想(北京)信息技术有限公司 | Substrate management controller, control method and electronic equipment |
CN114661368A (en) * | 2022-05-19 | 2022-06-24 | 中昊芯英(杭州)科技有限公司 | Chip and starting method thereof |
Also Published As
Publication number | Publication date |
---|---|
CN114047958B (en) | 2023-07-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5608139B2 (en) | Handling errors during device boot-up from non-volatile memory | |
TWI571800B (en) | Booting method and computer system | |
US7831857B2 (en) | Method and system for recovering from operating system crash or failure | |
CN114047958B (en) | Starting method, equipment and medium of baseboard management controller of server | |
CN112328358A (en) | Dual-system starting method based on virtual machine and storage medium | |
CN104424047A (en) | NVRAM data recovery method and NVRAM data recovery device | |
CN113157303A (en) | Upgrading method, embedded system, terminal and computer storage medium | |
CN113315675B (en) | White box switch U-Boot automatic testing method, system and storage medium | |
US20060206764A1 (en) | Memory reliability detection system and method | |
CN113867807A (en) | Method, device, equipment and storage medium for shortening power-on time of server | |
CN117130672A (en) | Server start flow control method, system, terminal and storage medium | |
CN113626262A (en) | BMC recovery method, system, equipment and medium | |
CN111124760B (en) | Uboot-based embedded equipment starting method and apparatus | |
CN114398087B (en) | Method for improving running stability of singlechip after program updating and singlechip | |
CN113377425B (en) | BMC firmware generation method and device, BMC starting method and device and storage medium | |
CN114356658A (en) | Processing method of firmware upgrading exception, computer equipment and readable storage medium | |
JP2002049509A (en) | Data processing system | |
CN111783162B (en) | Data protection implementation method and device and computer equipment | |
CN114510375A (en) | Flash chip data area dynamic sharing system and method | |
US20220206823A1 (en) | Information processing method and electronic apparatus | |
US11775284B2 (en) | Electronic device and code patching method | |
CN117389598A (en) | Configuration update reinforcement method, device, electronic equipment and storage medium | |
US20240012572A1 (en) | Operationalization of memories using memory information sets | |
CN117093399A (en) | System starting method, system on chip, computer equipment and storage medium | |
CN116795592A (en) | Firmware starting method and device, backboard and server |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |