Boot program repair method, system, electronic device and storage medium
By using the timing controller to detect and repair the boot program of the substrate management controller in electronic devices, the problem of boot program damage caused by the device being unable to be repaired is solved, and automatic repair is achieved, avoiding factory repair.
Patent Information
- Application Number
- CN202111395447.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-11-23
- Publication Date
- 2025-04-22
- Estimated Expiration
- 2041-11-23
AI Technical Summary
The startup of the substrate management controller in electronic devices depends on the boot program. If the boot program is destroyed, the device cannot be repaired and needs to be repaired, resulting in service interruption.
When powered on by the substrate management controller, it detects whether the target boot program is damaged based on the timing controller, and repairs the target boot program using the backup boot program stored in different storage units.
Automatic detection and repair of boot program damage, avoiding electronic equipment returning to the factory and ensuring the continuity of user use.
Smart Images

Figure CN113934567B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of electronic technology, and more specifically, to a boot program repair method, system, electronic device, and storage medium. Background Art
[0002] In general electronic devices, the startup of the Baseboard Manager Controller (BMC) depends on the Universal Boot Loader (Uboot). Once the boot program is damaged, the electronic device cannot be repaired and must be returned to the factory for repair, resulting in service interruption. Summary of the invention
[0003] The purpose of this application is to provide a boot program repair method, system, electronic device and storage medium, including the following technical solutions:
[0004] A boot program repair method, the method comprising:
[0005] When the baseboard management controller is powered on, it detects whether the target boot program is damaged based on the detection of the timing controller;
[0006] In the case that it is detected that the target boot program is damaged, the target boot program is repaired by using a backup boot program stored in a second storage unit different from the first storage unit where the target boot program is located.
[0007] In the above method, preferably, when the baseboard management controller is powered on, based on the detection of the timing controller, whether the target boot program is damaged includes:
[0008] When the baseboard management controller is powered on, the timing controller is triggered to start timing;
[0009] When the boot program is started, the timing controller is triggered to terminate timing; otherwise, the timing controller is prohibited from being triggered to terminate timing;
[0010] If the timing process is not terminated within the target time period, the timing controller determines that the target boot program is damaged.
[0011] In the above method, preferably, the triggering of the timing controller to start timing includes:
[0012] a power-on notification sent to the timing controller; or,
[0013] A power-on reset signal is output to the timing controller.
[0014] In the above method, preferably, the second storage unit is mounted on the timing controller; and the step of repairing the target boot program by using a backup boot program stored in a second storage unit different from the first storage unit where the target boot program is located comprises:
[0015] The timing controller mounts the second storage unit to the baseboard management controller;
[0016] The baseboard management controller uses the backup boot program to repair the target boot program.
[0017] In the above method, preferably, the second storage unit is connected to the baseboard management controller through a first path of the data selector, and the second storage unit is connected to the timing controller through a second path of the data selector; and the timing controller mounts the second storage unit to the baseboard management controller, comprising:
[0018] The timing controller turns off the second path and turns on the first path.
[0019] In the above method, preferably, the second storage unit is mounted on the timing controller; and the step of repairing the target boot program by using a backup boot program stored in a second storage unit different from the first storage unit where the target boot program is located comprises:
[0020] The timing controller mounts the first storage unit to the timing controller;
[0021] The timing controller uses the backup boot program to repair the target boot program;
[0022] After the timing controller repairs the target boot program, the first storage unit is mounted to the baseboard management controller.
[0023] In the above method, preferably, the first storage unit is connected to the baseboard management controller through a first path of the data selector, and the first storage unit is connected to the timing controller through a second path of the data selector; the timing controller mounts the target memory mounted on the baseboard management controller to the timing controller, including:
[0024] The timing controller turns off the first path and turns on the second path.
[0025] A boot program repair system includes: a first storage unit, a second storage unit, a baseboard management controller and a timing controller; wherein:
[0026] The first storage unit is used to store the target boot program;
[0027] The second storage unit is used to store the backup boot program;
[0028] When the baseboard management controller is powered on, the timing controller is used to detect whether the target boot program is damaged;
[0029] When it is detected that the target boot program is damaged, the baseboard management controller or the timing controller repairs the target boot program by using the backup boot program.
[0030] An electronic device, comprising:
[0031] Memory, used to store programs;
[0032] The processor is used to call and execute the program in the memory, and implement each step of the boot program repair method as described in any one of the above items by executing the program.
[0033] A readable storage medium stores a computer program thereon, and when the computer program is executed by a processor, the steps of the boot program repair method as described in any one of the above items are implemented.
[0034] Through the above scheme, it can be known that the present application provides a boot program repair method, system, electronic device and storage medium. When the baseboard management controller is powered on, it detects whether the target boot program is damaged based on the timing controller detection; when the target boot program is detected to be damaged, the target boot program is repaired using a backup boot program stored in a second storage unit different from the first storage unit where the target boot program is located. Based on the scheme of the present application, it is possible to automatically detect whether the boot program is damaged, and when the boot program is damaged, it can be automatically modified, avoiding the electronic device being returned to the factory and affecting the user's use. BRIEF DESCRIPTION OF THE DRAWINGS
[0035] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings required for use in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.
[0036] Figure 1 A flowchart of an implementation of the boot program repair method provided in an embodiment of the present application;
[0037] Figure 2 A flowchart for implementing the detection of whether a target boot program is damaged based on detection by a timing controller when a baseboard management controller provided in an embodiment of the present application is powered on;
[0038] Figure 3A flowchart for implementing the method of repairing a target boot program by using a backup boot program stored in a second storage unit different from the first storage unit where the target boot program is located, provided in an embodiment of the present application;
[0039] Figure 4 A schematic diagram of a connection relationship between a timing controller, a baseboard management controller and a second storage unit provided in an embodiment of the present application;
[0040] Figure 5 A flowchart for implementing the method of repairing a target boot program by using a backup boot program stored in a second storage unit different from the first storage unit where the target boot program is located, provided in an embodiment of the present application;
[0041] Figure 6 A schematic diagram of a connection relationship between a timing controller, a baseboard management controller and a second storage unit provided in an embodiment of the present application;
[0042] Figure 7 A schematic diagram of the structure of the boot program repair system provided in an embodiment of the present application;
[0043] Figure 8 A schematic diagram of the structure of an electronic device provided in an embodiment of the present application.
[0044] The terms "first", "second", "third", "fourth", etc. (if any) in the specification and claims and the above drawings are used to distinguish similar parts, and are not necessarily used to describe a specific order or sequence. It should be understood that the numbers used in this way can be interchanged where appropriate, so that the embodiments of the present application described herein can be implemented in an order other than that illustrated herein. DETAILED DESCRIPTION
[0045] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.
[0046] The boot program repair method provided in the embodiment of the present application is applied to an electronic device having a baseboard management controller and a timing controller, and the electronic device can be a terminal device or a server, etc.
[0047] like Figure 1 As shown, a flowchart of an implementation of the boot program repair method provided in an embodiment of the present application may include:
[0048] Step S101 : when the baseboard management controller is powered on, the timing controller detects whether the target boot program is damaged.
[0049] A first storage unit is mounted under the baseboard management controller, and a boot program (referred to as a target boot program) is stored in the first storage unit. The startup of the baseboard management controller depends on the startup of the target boot program.
[0050] When the baseboard management controller is powered on, it interacts with the timing controller to detect whether the target boot program is damaged.
[0051] As an example, the timing controller may include a Field-Programmable Gate Array (FPGA), that is, the timing controller is implemented by the FPGA.
[0052] Step S102: when it is detected that the target boot program is damaged, the target boot program is repaired by using a backup boot program stored in a second storage unit different from the first storage unit where the target boot program is located.
[0053] In the case that it is detected that the target boot program is damaged, the baseboard management controller may repair the target boot program by using the backup boot program, or the timing controller may repair the target boot program by using the backup boot program.
[0054] As an example, the second storage unit may be mounted on a baseboard management controller or a timing controller.
[0055] The boot program repair method provided in the embodiment of the present application detects whether the target boot program is damaged based on the detection of the timing controller when the baseboard management controller is powered on; when the target boot program is detected to be damaged, the target boot program is repaired using a backup boot program stored in a second storage unit different from the first storage unit where the target boot program is located. Based on the solution of the present application, it is possible to automatically detect whether the boot program is damaged, and when the boot program is damaged, it can be automatically modified, thereby avoiding the need to return the electronic device to the factory and affecting the user's use.
[0056] In an optional embodiment, when the baseboard management controller is powered on, based on the detection of the timing controller, a flowchart for detecting whether the target boot program is damaged is as follows: Figure 2 As shown, it may include:
[0057] Step S201: When the baseboard management controller is powered on, the timing controller is triggered to start timing.
[0058] When the baseboard management controller is powered on, it can send a notification message (i.e., a power-on notification) to the timing controller, and the timing controller starts timing when it receives the power-on notification. Alternatively, the baseboard management controller can output a power-on reset signal (e.g., an EXTRST signal, or a WDTRST signal, etc.) to the timing controller, and the timing controller starts timing when it detects the power-on reset signal.
[0059] Regardless of whether a notification message is sent to the timing controller or a power-on reset signal is sent to the timing controller, the purpose is to enable the timing controller to know that the baseboard management controller is powered on and is about to start.
[0060] Step S202: When the boot program is started, the timing controller is triggered to terminate timing; otherwise, the timing controller is prohibited from being triggered to terminate timing.
[0061] If the boot program starts normally, the baseboard management controller will also start normally, and the baseboard management controller will trigger the timing controller to terminate the timing. If the boot program does not start normally, the baseboard management controller will not start normally, and the baseboard management controller will not trigger the timing controller to terminate the timing.
[0062] The baseboard management controller may inform the timing controller that the baseboard management controller has started normally by sending a startup notification to the timing controller. After receiving the startup notification message, the timing controller stops timing.
[0063] Step S203: If the timing process is not terminated within the target time period, the timing controller determines that the target boot program is damaged.
[0064] In the embodiment of the present application, the timing controller determines whether the target boot program is damaged based on the timing duration when it is terminated. That is, if the timing process is terminated within a certain duration (i.e., the target duration), it is considered that the target boot program is started normally and is not damaged. If it is still not terminated after exceeding the target duration, the timing controller can determine that the target boot program is damaged.
[0065] In an optional embodiment, in order to more accurately determine whether the target boot program is damaged, the target duration may be divided into multiple sub-target durations. As an example, the target duration may be divided into 2 or 3 sub-target durations. Based on this, the timing controller may determine whether the target boot program of the baseboard management controller is damaged in the following manner:
[0066] If the timing process is not terminated when the sub-target duration is reached, the baseboard management controller is triggered to restart, so that the baseboard management controller triggers the timing controller to restart timing until the total timing duration reaches the target duration (or the number of timing times reaches the number of sub-target durations), or the timing process is terminated before the target duration is reached. For example,
[0067] As an example, the target duration is 90 seconds and the sub-target duration is 30 seconds. Then, the process of the timing controller determining whether the target boot program of the baseboard management controller is damaged may include:
[0068] After the baseboard management controller is powered on, the timing controller is triggered to start the first timing. If the timing controller receives a termination instruction or a startup notification from the baseboard management controller before the timing reaches 30s, the timing controller terminates the timing, determines that the target boot program is normal, and does not execute subsequent steps; if the timing controller still does not receive a termination instruction or a startup notification from the baseboard management controller when the timing reaches 30s, it means that the target boot program may be damaged, and the timing controller triggers the baseboard management controller to restart (i.e., power off and then power on). After the baseboard management controller is restarted, the timing controller is triggered to start the second timing. If the timing controller receives a termination instruction or a startup notification from the baseboard management controller before the timing reaches 30s, the timing controller terminates the timing, determines that the target boot program is normal, and does not execute subsequent steps; if the timing controller still does not receive a termination instruction or a startup notification from the baseboard management controller when the timing reaches 30s, it means that the target boot program may be damaged, and the timing controller triggers the baseboard management controller to restart. After the baseboard management controller restarts, the timing controller is triggered to start the third timing. If the timing controller receives a termination instruction or a start notification from the baseboard management controller before the timing reaches 30 seconds, the timing controller terminates the timing, determines that the target boot program is normal, and no longer executes subsequent steps; if the timing controller still does not receive a termination instruction or a start notification from the baseboard management controller when the timing reaches 30 seconds, the timing controller no longer triggers the baseboard management controller to restart, and determines that the target boot program is damaged.
[0069] In an optional embodiment, the second storage unit can be mounted on the baseboard management controller. After the timing controller determines that the target boot program is damaged, it sends a repair instruction or repair notification to the baseboard management controller. After receiving the repair instruction or repair notification, the baseboard management controller uses the backup boot program in the second storage unit to repair the target boot program.
[0070] The inventors of the present application have discovered that when the second storage unit is mounted under the baseboard management controller, since the free storage space of the storage unit mounted under the baseboard management controller is small, it is necessary to mount a new storage unit for storing the backup boot program under the baseboard management controller as the second storage unit. Adding a new storage unit will increase the cost of the electronic device, and the new storage unit will occupy physical space in the electronic device, which is not conducive to the dissipation of heat and is not conducive to the configuration of new other components of the electronic device, affecting the functional expansion of the electronic device.
[0071] The inventor of the present application also found that the storage unit mounted under the timing controller usually has a large free storage space. Therefore, in an optional embodiment, the second storage unit can be a storage unit mounted on the timing controller. The second storage unit can be an existing storage unit under the timing controller. In other words, the second storage unit storing the backup boot program reuses the storage unit mounted under the timing controller. Based on this, the above-mentioned flowchart of an implementation of repairing the target boot program using the backup boot program stored in the second storage unit different from the first storage unit where the target boot program is located is as follows: Figure 3 As shown, this may include:
[0072] Step S301: the timing controller mounts the second storage unit to the baseboard management controller.
[0073] The second storage unit can be mounted to the baseboard management controller through N (N is a positive integer greater than 1) data selectors (MUX-multiplexers). Optionally, the second storage unit is connected to the baseboard management controller through a first path of the data selector (which can be recorded as the first data selector for easy distinction), and the second storage unit is connected to the timing controller through a second path of the first data selector. Figure 4 As shown, a schematic diagram of a connection relationship between a timing controller, a baseboard management controller, and a second storage unit provided in an embodiment of the present application is provided. In this example, the first data selector is connected to the baseboard management controller, the timing controller, and the second storage unit via an SPI (Serial Peripheral Interface) bus. In general, when the target boot program is normal, the first path is closed and the second path is turned on. At this time, the timing controller can update the backup boot program through the second path. For example, when the target boot program has a new version, after the target boot program is upgraded to the new version, the backup boot program is updated to the latest version. When the timing controller determines that the target boot program is damaged, the second path is closed and the first path is turned on, so that the second storage unit is mounted to the baseboard management controller.
[0074] Step S302: the baseboard management controller uses the backup boot program to repair the target boot program.
[0075] After the timing controller mounts the second storage unit to the baseboard management controller, it can send a mount notification to the baseboard management controller, so that the baseboard management controller knows that the second storage unit has been mounted to the baseboard management controller and can repair the target boot program. Or,
[0076] After the timing controller mounts the second storage unit to the baseboard management controller, it may not send a mounting notification to the baseboard management controller, but the baseboard management controller may detect that the second storage unit is mounted to the baseboard management controller. For example, since the baseboard management controller is connected to the data selector, the baseboard management controller may detect a voltage change of an interface connected to the data selector to determine that the second storage unit is mounted to the baseboard management controller.
[0077] After the baseboard management controller determines that the second storage unit is mounted to the baseboard management controller through any of the above methods, the second storage unit can be accessed, and then the backup boot program can be read and the target boot program can be repaired based on the backup boot program.
[0078] Optionally, the backup boot program is composed of a repair program and a boot program, and the baseboard management controller runs the repair program to repair the target boot program in the first storage unit using the boot program in the backup boot program.
[0079] After the baseboard management controller completes the repair of the target boot program, it can notify the timing controller, for example, send a repair completion notification to the timing controller. After receiving the repair completion notification, the timing controller can mount the second storage unit back to the timing controller. Specifically, the first path can be closed and the second path can be turned on.
[0080] In the case where the second storage unit is mounted on the timing controller, an implementation flowchart of using a backup boot program stored in a second storage unit different from the first storage unit where the target boot program is located to repair the target boot program is provided in an embodiment of the present application. Figure 5 As shown, this may include:
[0081] Step S501: the timing controller mounts the first storage unit to the timing controller.
[0082] Different from the previous embodiment, in this embodiment, the target boot program is repaired by the timing controller, so the first storage unit is mounted to the timing controller. Optionally, the first storage unit can be mounted to the timing controller through N (N is a positive integer greater than 1) data selectors (MUX-multiplexer). Optionally, the first storage unit is connected to the baseboard management controller through the first path of the data selector (for easy distinction, it can be recorded as the second data selector), and the first storage unit is connected to the timing controller through the second path of the second data selector. Figure 6As shown, a schematic diagram of a connection relationship between a timing controller, a baseboard management controller, and a second storage unit provided in an embodiment of the present application is provided. In this example, the second data selector is connected to the baseboard management controller, the timing controller, and the first storage unit via an SPI bus. In general, when the target boot program is normal, the first path is turned on and the second path is turned off. At this time, the baseboard management controller can access the first storage unit and run the target boot program. The target boot program can also be updated through the first path. For example, when the target boot program has a new version, the target boot program can be upgraded through the first path. When the timing controller determines that the target boot program is damaged, the first path is turned off and the second path is turned on, so that the first storage unit is mounted to the timing controller.
[0083] Step S502: the timing controller uses the backup boot program to repair the target boot program.
[0084] The process of the timing controller using the backup boot program to repair the target boot program can refer to the process of the baseboard management controller using the backup boot program to repair the target boot program, which will not be repeated here.
[0085] Step S503: After the timing controller repairs the target boot program, the first storage unit is mounted to the baseboard management controller.
[0086] After repairing the target boot program, the first storage unit needs to be mounted back to the baseboard management controller so that the baseboard management controller can run the boot program so that the baseboard management controller can start normally. Optionally, the second path can be closed and the first path can be turned on so that the first storage unit is mounted back to the baseboard management controller.
[0087] Corresponding to the method embodiment, the present application embodiment also provides a boot program repair system, such as Figure 7 As shown, a schematic diagram of a structure of a boot program repair system provided in an embodiment of the present application may include:
[0088] A first storage unit 701, a second storage unit 702, a baseboard management controller 703 and a timing controller 704; wherein,
[0089] The first storage unit 701 is used to store the target boot program; the first storage unit 701 can be mounted on the baseboard management controller 703 or the timing controller 704. The first storage unit 701 can only be mounted on the baseboard management controller 703 or the timing controller 704 at the same time, but cannot be mounted on both the baseboard management controller 703 and the timing controller 704 at the same time.
[0090] The second storage unit 702 is used to store the backup boot program; the second storage unit 702 can be mounted on the timing controller 704 or the baseboard management controller 703. The second storage unit 702 can only be mounted on the baseboard management controller 703 or the timing controller 704 at the same time, but cannot be mounted on both the baseboard management controller 703 and the timing controller 704 at the same time.
[0091] When the baseboard management controller 703 is powered on, it detects whether the target boot program is damaged based on the detection of the timing controller 704;
[0092] When it is detected that the target boot program is damaged, the baseboard management controller 703 or the timing controller 704 repairs the target boot program by using the backup boot program.
[0093] In the boot program repair system provided by the embodiment of the present application, when the baseboard management controller 703 is powered on, the timing controller detects whether the target boot program is damaged; when the target boot program is detected to be damaged, the target boot program is repaired using a backup boot program stored in a second storage unit different from the first storage unit where the target boot program is located. Based on the solution of the present application, it is possible to automatically detect whether the boot program is damaged, and when the boot program is damaged, it can be automatically modified, thereby avoiding the need to return the electronic device to the factory and affecting the user's use.
[0094] In an optional embodiment, when the baseboard management controller 703 is powered on, based on the detection by the timing controller 704, when detecting whether the target boot program is damaged, it is used to:
[0095] The baseboard management controller 703 is used to trigger the timing controller to start timing when the power is turned on; when the boot program is started, trigger the timing controller to stop timing; otherwise, it is forbidden to trigger the timing controller to stop timing;
[0096] The timing controller is used to determine that the target boot program is damaged if the timing process is not terminated within the target time length.
[0097] In an optional embodiment, when the baseboard management controller 703 triggers the timing controller to start timing, it is used to:
[0098] a power-on notification sent to the timing controller; or,
[0099] A power-on reset signal is output to the timing controller.
[0100] In an optional embodiment, the second storage unit is mounted on the timing controller;
[0101] The timing controller is used to mount the second storage unit to the baseboard management controller 703;
[0102] The baseboard management controller 703 is used to repair the target boot program by using the backup boot program.
[0103] In an optional embodiment, the second storage unit is connected to the baseboard management controller 703 through a first path of a data selector, and the second storage unit is connected to the timing controller through a second path of the data selector; when the timing controller mounts the second storage unit to the baseboard management controller 703, it is used to:
[0104] The second path is closed and the first path is opened.
[0105] In an optional embodiment, the second storage unit is mounted on the timing controller;
[0106] The timing controller is used to mount the first storage unit to the timing controller;
[0107] The timing controller is used to repair the target boot program by using the backup boot program; after repairing the target boot program, the first storage unit is mounted to the baseboard management controller 703 .
[0108] In an optional embodiment, the first storage unit is connected to the baseboard management controller 703 through a first path of a data selector, and the first storage unit is connected to the timing controller through a second path of the data selector; when the timing controller mounts the target memory mounted on the baseboard management controller 703 to the timing controller, it is used to:
[0109] The first path is closed and the second path is opened.
[0110] Corresponding to the method embodiment, the present application also provides an electronic device, a structural schematic diagram of the electronic device is shown as follows Figure 8 As shown, it may include: at least one processor 1, at least one communication interface 2, at least one memory 3 and at least one communication bus 4.
[0111] In the embodiment of the present application, the number of the processor 1 , the communication interface 2 , the memory 3 , and the communication bus 4 is at least one, and the processor 1 , the communication interface 2 , and the memory 3 communicate with each other through the communication bus 4 .
[0112] The processor 1 may be a central processing unit CPU, or an application-specific integrated circuit ASIC (Application Specific Integrated Circuit), or one or more integrated circuits configured to implement the embodiments of the present application.
[0113] The memory 3 may include a high-speed RAM memory, and may also include a non-volatile memory (non-volatile memory), etc., such as at least one disk memory.
[0114] The memory 3 stores a program, and the processor 1 can call the program stored in the memory 3, and the program is used to:
[0115] When the baseboard management controller is powered on, it detects whether the target boot program is damaged based on the detection of the timing controller;
[0116] In the case that it is detected that the target boot program is damaged, the target boot program is repaired by using a backup boot program stored in a second storage unit different from the first storage unit where the target boot program is located.
[0117] Optionally, the detailed functions and extended functions of the program may refer to the above description.
[0118] The embodiment of the present application further provides a storage medium, which may store a program suitable for execution by a processor, wherein the program is used to:
[0119] When the baseboard management controller is powered on, it detects whether the target boot program is damaged based on the detection of the timing controller;
[0120] In the case that it is detected that the target boot program is damaged, the target boot program is repaired by using a backup boot program stored in a second storage unit different from the first storage unit where the target boot program is located.
[0121] Optionally, the detailed functions and extended functions of the program may refer to the above description.
[0122] Those of ordinary skill in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.
[0123] In the several embodiments provided in this application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. In addition, the mutual coupling or direct coupling or communication connection shown or discussed can be an indirect coupling or communication connection through some interface, device or unit, which can be electrical, mechanical or other forms.
[0124] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0125] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
[0126] It should be understood that in the embodiments of the present application, the various embodiments and features can be combined with each other to solve the aforementioned technical problems.
[0127] If the functions are implemented in the form of software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art or the part of the technical solution, can be embodied in the form of a software product, which is stored in a storage medium and includes several instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the methods described in each embodiment of the present application. The aforementioned storage medium includes: various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.
[0128] The above description of the disclosed embodiments enables those skilled in the art to implement or use the present application. Various modifications to these embodiments will be apparent to those skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of the present application. Therefore, the present application will not be limited to the embodiments shown herein, but will conform to the widest scope consistent with the principles and novel features disclosed herein.
Claims
1. A boot program repair method, the method comprising: When the baseboard management controller is powered on, it detects whether the target boot program is damaged based on the detection of the timing controller; In the case where it is detected that the target boot program is damaged, repairing the target boot program by using a backup boot program stored in a second storage unit different from the first storage unit where the target boot program is located; The second storage unit is mounted on the timing controller; The second storage unit is connected to the baseboard management controller through a first path of the data selector, and the second storage unit is connected to the timing controller through a second path of the data selector; The method of repairing the target boot program by using a backup boot program stored in a second storage unit different from the first storage unit where the target boot program is located comprises: The timing controller closes the second path, turns on the first path, and mounts the second storage unit to the baseboard management controller; The baseboard management controller uses the backup boot program to repair the target boot program.
2. The method according to claim 1, when the baseboard management controller is powered on, based on the detection of the timing controller, detects whether the target boot program is damaged, comprising: When the baseboard management controller is powered on, the timing controller is triggered to start timing; When the boot program is started, triggering the timing controller to stop timing; Otherwise, it is forbidden to trigger the timing controller to terminate timing; If the timing process is not terminated within the target time period, the timing controller determines that the target boot program is damaged.
3. The method according to claim 2, wherein triggering the timing controller to start timing comprises: A power-on notification sent to the timing controller; or, A power-on reset signal is output to the timing controller.
4. A boot program repair method, the method comprising: When the baseboard management controller is powered on, it detects whether the target boot program is damaged based on the detection of the timing controller; In the case where it is detected that the target boot program is damaged, repairing the target boot program by using a backup boot program stored in a second storage unit different from the first storage unit where the target boot program is located; The second storage unit is mounted on the timing controller; The method of repairing the target boot program by using a backup boot program stored in a second storage unit different from the first storage unit where the target boot program is located comprises: The timing controller mounts the first storage unit to the timing controller; The timing controller uses the backup boot program to repair the target boot program; After the timing controller repairs the target boot program, the first storage unit is mounted to the baseboard management controller.
5. The method according to claim 4, wherein the first storage unit is connected to the baseboard management controller through a first path of a data selector, and the first storage unit is connected to the timing controller through a second path of the data selector; and the timing controller mounts the target memory mounted on the baseboard management controller to the timing controller, comprising: The timing controller turns off the first path and turns on the second path.
6. The method according to claim 4, when the baseboard management controller is powered on, based on the detection of the timing controller, detects whether the target boot program is damaged, comprising: When the baseboard management controller is powered on, the timing controller is triggered to start timing; When the boot program is started, triggering the timing controller to stop timing; Otherwise, it is forbidden to trigger the timing controller to terminate timing; If the timing process is not terminated within the target time period, the timing controller determines that the target boot program is damaged.
7. The method according to claim 6, wherein triggering the timing controller to start timing comprises: A power-on notification sent to the timing controller; or, A power-on reset signal is output to the timing controller.
8. A boot program repair system, comprising: A first storage unit, a second storage unit, a baseboard management controller and a timing controller; wherein, The first storage unit is used to store the target boot program; The second storage unit is used to store the backup boot program; When the baseboard management controller is powered on, the timing controller is used to detect whether the target boot program is damaged; In the case where it is detected that the target boot program is damaged, the baseboard management controller or the timing controller uses the backup boot program to repair the target boot program; The second storage unit is mounted on the timing controller; the second storage unit is connected to the baseboard management controller through a first path of the data selector, and the second storage unit is connected to the timing controller through a second path of the data selector; the baseboard management controller uses the backup boot program to repair the target boot program, including: The timing controller closes the second path, turns on the first path, and mounts the second storage unit to the baseboard management controller; The baseboard management controller uses the backup boot program to repair the target boot program.
9. A boot program repair system, comprising: A first storage unit, a second storage unit, a baseboard management controller and a timing controller; wherein, The first storage unit is used to store the target boot program; The second storage unit is used to store the backup boot program; When the baseboard management controller is powered on, the timing controller is used to detect whether the target boot program is damaged; In the case where it is detected that the target boot program is damaged, the baseboard management controller or the timing controller uses the backup boot program to repair the target boot program; The second storage unit is mounted on the timing controller; the timing controller uses the backup boot program to repair the target boot program, including: The timing controller mounts the first storage unit to the timing controller; The timing controller uses the backup boot program to repair the target boot program; After the timing controller repairs the target boot program, the first storage unit is mounted to the baseboard management controller.
10. An electronic device, comprising: Memory, used to store programs; A processor is used to call and execute the program in the memory, and implement the various steps of the boot program repair method as described in any one of claims 1 to 7 by executing the program.
11. A readable storage medium having a computer program stored thereon, wherein when the computer program is executed by a processor, the computer program implements the steps of the boot program repair method according to any one of claims 1 to 7.
Citation Information
Patent Citations
Boot program backup method and Boot program backup device
CN102520979A
Electronic device starting method and electronic device
CN106775610A