CN114610415B - Program starting method, system, storage medium and electronic equipment - Google Patents

Program starting method, system, storage medium and electronic equipment Download PDF

Info

Publication number
CN114610415B
CN114610415B CN202210288052.8A CN202210288052A CN114610415B CN 114610415 B CN114610415 B CN 114610415B CN 202210288052 A CN202210288052 A CN 202210288052A CN 114610415 B CN114610415 B CN 114610415B
Authority
CN
China
Prior art keywords
program
starting
bootloader program
configuration information
bootloader
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.)
Active
Application number
CN202210288052.8A
Other languages
Chinese (zh)
Other versions
CN114610415A (en
Inventor
张志浩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Jingwei Hirain Tech Co Ltd
Original Assignee
Beijing Jingwei Hirain Tech Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Jingwei Hirain Tech Co Ltd filed Critical Beijing Jingwei Hirain Tech Co Ltd
Priority to CN202210288052.8A priority Critical patent/CN114610415B/en
Publication of CN114610415A publication Critical patent/CN114610415A/en
Application granted granted Critical
Publication of CN114610415B publication Critical patent/CN114610415B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping

Abstract

The embodiment of the invention provides a program starting method, a program starting system, a storage medium and electronic equipment. The method is applied to a processor, a first BootLoader program and a second BootLoader program are arranged in the processor, and the method comprises the following steps: verifying first starting configuration information of a first BootLoader program; under the condition that the verification of the first starting configuration information is not passed, verifying the second starting configuration information of the second BootLoader program; and under the condition that the verification of the second starting configuration information is passed, analyzing and obtaining the starting address of the second BootLoader program from the second starting configuration information, and running the guiding information pointed by the starting address of the second BootLoader program. The invention solves the problem that the processor cannot be normally guided to run the application program when the BootLoader program has a problem.

Description

Program starting method, system, storage medium and electronic equipment
Technical Field
The present invention relates to the field of embedded technologies, and in particular, to a program starting method, a system, a storage medium, and an electronic device.
Background
The BootLoader is a first code segment executed by the embedded system after power-on, and is responsible for downloading an application program to a storage space of the processor, guiding the processor to start up and run the application program, and guiding the starting application program through the BootLoader to enable the processor to execute normal functions.
The BootLoader program is injected into the processor, where it runs to direct the processor to run the application. However, the current BootLoader program has the disadvantage that the BootLoader program cannot be updated once the processor is injected. When a problem occurs in the BootLoader program injected into the processor, the processor cannot be booted to run the application program. Due to the above drawbacks, the BootLoader program injected into the processor cannot be repaired by updating, so that the problem that the BootLoader program cannot be guided to run the application program when the BootLoader program has a problem cannot be solved.
Disclosure of Invention
The embodiment of the invention aims to provide a program starting method, a program starting system, a storage medium and electronic equipment, which can solve the problem that a processor cannot be normally guided to run an application program when a BootLoader program is in a problem. The specific technical scheme is as follows:
the invention provides a program starting method, which is applied to a processor, wherein a first BootLoader program and a second BootLoader program are arranged in the processor, and the method comprises the following steps:
verifying the first starting configuration information of the first BootLoader program; the program starting mode characterized by the first starting configuration information is an ABM mode;
Verifying the second starting configuration information of the second BootLoader program under the condition that the first starting configuration information is not verified; the program starting mode represented by the second starting configuration information is an ABM mode;
under the condition that the verification of the second starting configuration information is passed, analyzing and obtaining a starting address of a second BootLoader program from the second starting configuration information, and running the guiding information pointed by the starting address of the second BootLoader program; the boot information pointed by the boot address of the second BootLoader program is used for booting the target program.
Optionally, the method further comprises:
under the condition that the verification of the first starting configuration information is passed, analyzing and obtaining a starting address of a first BootLoader program from the first starting configuration information, and running the guiding information pointed by the starting address of the first BootLoader program; the guiding information pointed by the starting address of the first BootLoader program is used for guiding the target program to start.
Optionally, the first BootLoader program carries a start address of the second BootLoader program, and after the running the boot information pointed to by the start address of the first BootLoader program, the method further includes:
And responding to a first BootLoader program updating instruction, analyzing and obtaining the starting address of the second BootLoader program from the first BootLoader program, running the guiding information pointed by the starting address of the second BootLoader program, and downloading the updated first BootLoader program.
Optionally, after the downloading of the updated first BootLoader program, the method further includes:
under the condition that the updated first BootLoader program is not successfully downloaded, verifying the first starting configuration information again, if the first starting configuration information passes the verification, analyzing and obtaining a starting address of the first BootLoader program from the first starting configuration information, and running the guiding information pointed by the starting address of the first BootLoader program;
and under the condition that the updated first BootLoader program is successfully downloaded, updating the first BootLoader program by using the updated first BootLoader program.
Optionally, after the updating the first BootLoader program using the updated first BootLoader program, the method further includes:
extracting updated starting configuration information from the updated first BootLoader program;
Verifying the updated starting configuration information;
under the condition that the updated starting configuration information passes verification, analyzing and obtaining an updated starting address from the updated starting configuration information, and running the guiding information pointed by the updated starting address; the guiding information pointed by the updated starting address is used for guiding the starting of the target program.
Optionally, after the running the boot information pointed to by the start address of the second BootLoader program, the method further includes:
downloading the first BootLoader program when the first starting configuration information is empty;
deleting the downloaded data in the first BootLoader program under the condition that the first BootLoader program is not downloaded successfully, and re-downloading the first BootLoader program after deleting the data;
and under the condition that the first BootLoader program is successfully downloaded, extracting the first starting configuration information from the first BootLoader program, verifying the first starting configuration information, and under the condition that the first starting configuration information is verified, analyzing and obtaining the starting address of the first BootLoader program from the first starting configuration information, and running the guiding information pointed by the starting address of the first BootLoader program.
Optionally, after the running the boot information pointed to by the start address of the first BootLoader program, the method further includes:
under the condition that the first BootLoader program does not normally run, verifying the first starting configuration information again;
verifying the second starting configuration information under the condition that the first starting configuration information is not verified;
and under the condition that the verification of the second starting configuration information is passed, analyzing and obtaining the starting address of the second BootLoader program from the second starting configuration information, and running the guiding information pointed by the starting address of the second BootLoader program.
The invention also provides a program starting system, which is applied to a processor, wherein a first BootLoader program and a second BootLoader program are arranged in the processor, and the system comprises:
the first verification module is used for verifying the first starting configuration information of the first BootLoader program; the program starting mode characterized by the first starting configuration information is an ABM mode;
the second verification module is used for verifying the second starting configuration information of the second BootLoader program under the condition that the first starting configuration information is not verified; the program starting mode represented by the second starting configuration information is an ABM mode;
The program starting module is used for analyzing and obtaining the starting address of the second BootLoader program from the second starting configuration information under the condition that the second starting configuration information passes the verification, and running the guiding information pointed by the starting address of the second BootLoader program; the boot information pointed by the boot address of the second BootLoader program is used for booting the target program.
The present invention also provides a computer-readable storage medium having a program stored thereon, which when executed by a processor, implements the program starting method described above.
The present invention also provides an electronic device including:
at least one processor, and at least one memory, bus, connected to the processor;
the processor and the memory complete communication with each other through the bus; the processor is used for calling the program instructions in the memory to execute the program starting method.
According to the program starting method, the system, the storage medium and the electronic equipment provided by the embodiment of the invention, through the two BootLoader programs, when the starting configuration information generated by one BootLoader program is not verified, the starting configuration information generated by the other BootLoader program can be analyzed to obtain the starting address, and the guiding information pointed by the starting address is operated under the condition that the program starting mode is the ABM mode, so that the target program is guided to start. The invention solves the problem that the processor cannot be normally guided to run the application program when the BootLoader program has a problem.
Of course, it is not necessary for any one product or method of practicing the invention to achieve all of the advantages set forth above at the same time.
Drawings
In order to more clearly illustrate the embodiments of the invention or the technical solutions in the prior art, the drawings that are required in the embodiments or the description of the prior art will be briefly described, it being obvious that the drawings in the following description are only some embodiments of the invention, and that other drawings may be obtained according to these drawings without inventive effort for a person skilled in the art.
FIG. 1 is a flowchart of a program starting method according to an embodiment of the present invention;
FIG. 2 is a block diagram of a program start system according to an embodiment of the present invention;
fig. 3 is a schematic structural diagram of an electronic device according to an embodiment of the present invention.
Detailed Description
The following description of the embodiments of the present invention will be made clearly and completely with reference to the accompanying drawings, in which it is apparent that the embodiments described are only some embodiments of the present invention, but not all embodiments. All other embodiments, which can be made by those skilled in the art based on the embodiments of the invention without making any inventive effort, are intended to be within the scope of the invention.
The invention provides a program starting method which is applied to a processor, wherein a first BootLoader program and a second BootLoader program are arranged in the processor.
Optionally, the processor may have a chip, and the chip may perform the program starting method provided by the present invention. Under the condition that only one BootLoader program exists in the chip, the single BootLoader program can guide and start the application program and can also download the application program. However, a BootLoader program cannot be updated by a single BootLoader program, because if the BootLoader program is updated, the BootLoader program stored in the chip needs to be deleted first, and then the updated BootLoader program is downloaded again after the BootLoader program is deleted, however, once the stored BootLoader program is deleted, the chip cannot download and run the BootLoader program normally. Therefore, the problem that the BootLoader program cannot guide the chip to run the application program when the BootLoader program has a problem exists in injecting a BootLoader program into the chip.
In order to solve the problems, two BootLoader programs are arranged in the chip, so that the problem that the processor cannot normally guide the processor to run an application program when the single BootLoader program has problems is solved, the BootLoader program is updated, and when the BootLoader program has problems, the chip can execute normal functions in a mode of updating the BootLoader program. Alternatively, the two programs set in the chip may be a first BootLoader program and a second BootLoader program; the first BootLoader program can realize application program downloading, guide and start the application program, and the first BootLoader program can be updated. The second BootLoader program can realize the downloading of the application program and the guiding of the starting application program, but the second BootLoader program is not updated upgradeable.
Optionally, the chip may be burned with a first BootLoader program and a second BootLoader program before leaving the factory; of course, the second BootLoader program may be only burned before the chip leaves the factory, and the first BootLoader program may be downloaded by the second BootLoader program after the chip is started. The application program can be burned in the chip before the chip leaves the factory, or can be downloaded into the chip through the first BootLoader program or the second BootLoader program after the chip runs.
As shown in fig. 1, the program starting method provided by the invention comprises the following steps:
step 101: verifying first starting configuration information of a first BootLoader program; the program starting mode characterized by the first starting configuration information is an ABM mode.
The invention aims to solve the problem that a processor cannot be normally guided to run an application program when a BootLoader program has a problem, and a first BootLoader program and a second BootLoader program are arranged in a chip. And the chip has a BMI (Boot Mode Index) function. The BMI is a piece of information for selecting the start-up mode, and may be stored in the FLASH of the chip, although the BMI may also be stored in the PFLASH of the chip.
The BootLoader value of the BootLoader program (Header information of the BootLoader program) carries starting configuration information, and when the BootLoader program is stored, the chip stores the starting configuration information in the BMI. Optionally, the BMI includes four pieces of information, BMHD0, BMHD1, BMHD2, BMHD3, respectively. The purpose of the plurality of BMHD is to prevent the chip from being unusable when a partial BMHD damage occurs during the chip start-up phase. Each of the above pieces of information has a firmware, which is called ABM (standby boot mode), in which the program is allowed to execute from a user-defined address. The method for starting the program provided by the invention can be adopted for the chip with the ABM starting mode, so that the problem that the processor cannot be normally guided to run the application program when the BootLoader program has a problem can be solved, and the BootLoader program updating operation can be realized. Alternatively, the chip with ABM enabled mode may be an inflight TC22x chip.
There is one ABM for each BMI information segment, and the address of each ABM is shown in table 1.
TABM 1 ABM Address
BMI Start address Termination address
BMHD0 A000 0000 H A000 001F H
BMHD1 A002 0000 H A002 001F H
BMHD2 A000 FFE0 H A000 FFFF H
BMHD3 A001 FFE0 H A001 FFFF H
In table 1, the address lengths of BMHD0, BMHD1, BMHD2, and BMHD3 are all 32 bytes, and because the first BootLoader program and the second BootLoader program are set in the chip, the invention stores the startup configuration information carried in the Header value of the BootLoader program by using two pieces of BMHD information. After the chip is powered on, the chip can be executed according to the sequence from the BMHD0 to the BMHD3, and the first BootLoader program can be executed first and then the second BootLoader program can be executed, so that the BMHD information segment stored by the first starting configuration information can be positioned before the BMHD information segment stored by the second starting configuration information. Specifically, the start configuration information of the first BootLoader program may be stored in BMHD0, and the Header value of the second BootLoader program may be stored in BMHD1 or BMHD2 or BMHD 3; of course, the start configuration information of the first BootLoader program may be stored in the BMHD1, and the Header value of the second BootLoader program may be stored in the BMHD2 or the BMHD 3; in addition, the start configuration information of the first BootLoader program may be stored in the BMHD2, and the Header value of the second BootLoader program may be stored in the BMHD3.
The framework structure of ABM is shown in table 2.
Table 2 frame structure of ABM
In Table 2, STADABM is the user program start address, i.e., the boot address of the BootLoader program, from which the first piece of program code is executed to direct the application to boot. As can be seen from table 2, bootLoader program start address STADABM takes 4 bytes, start mode index BMI takes 2 bytes, and from address 00H to address 1CH, the stored content takes a total of 32 bytes. The Header value of the BootLoader program is stored in the ABM framework of table 2, and the ABM framework of table 2 can reflect that the program start mode is the ABM mode. The start mode of the chip is an ABM mode, and in order to normally operate the BootLoader program, it is necessary to check whether the ABM mode of the chip is valid before the BootLoader program is operated.
Among them, the start mode index (BMI) structure in the framework structure of ABM is shown in table 3.
TABLE 3 BMI Structure
Under the condition that the processor is an Infrate TC22x chip, the steps for checking whether the ABM mode is valid according to Infrate TC22x series chip manual specifications are as follows:
step 1: checking whether the BMHDID is valid;
(a) If bmhdid=b 359 H Step 2 is executed;
(b) If BMHDID is not equal to B359 H Step 7 is performed.
Step 2: the CRC (Cyclic Redundancy Check ) value of the first 24 bytes of BMHD is calculated, and the result is compared with CRChead (18 H ) Comparing;
(a) If the CRC value is the same as CRChead, the CRC value is inverted to the inverse of CRCheadComparing;
(aa) if CRC takes the inverse valueIf the two are the same, executing the step 3;
(bb) if CRC takes the inverse valueOtherwise, step 7 is performed.
(b) If the CRC value is different from CRChead, step 7 is performed.
Step 3: checking whether the previous BMI enabled pin configuration, whether the pin has selected the ABM start mode but the code check failed; alternatively, the pin may be a HWCFG pin;
(a) If the pin has selected the ABM start mode and the code check is valid, executing step 4;
(b) If the pin has selected the ABM launch mode and the code check fails, then the Generic or ASC bootloader mode is executed according to the HWCFG [5:4] pin state.
Step 4: checking if the condition (OTP protection mode disabled) is true;
(a) If true, initializing all security-related rams, then checking if any debugger is connected, and requesting a reset after shutdown (ostate. Harr=1);
(aa) if connected, executing an internal start mode, CPU0 will stop before the first user instruction;
(bb) if not connected, performing a general bootloading mode (default mode if there is no valid BMI);
(b) If false, then check and optionally allow debug access using the general evaluation order, and then enter an infinite loop. The external debugger (if access rights are granted) can further handle the device boot.
Step 5: CRC values of data from ChkStart to ChkEnd are calculated, and the result is calculated with CRCrage (10 H ) Comparing;
(a) If the CRC value is the same as CRCrange, the CRC value is inverted to the CRCrange valueComparing;
(aa) if CRC takes the inverse valueIf the BMI verification result is the same, exiting the current verification process, and passing the current BMI verification;
(bb) if CRC takes the inverse valueIf the two types of the data are different, executing the step 6;
(b) If the CRC value is different from CRCrange, step 6 is performed.
Step 6: checking an ABM selection mode;
(a) If the BMI is selected, executing the step 7;
(b) If the selection is made from the HWCFG pins, a generic bootloader ABM is installed in the STSTAT. HWCFG, exiting the current BMI validation process.
Step 7: checking Flash configuration parameters;
(a) If no error is found, the verification process is exited, and the BMI verification fails;
(b) If errors are found, the current task is immediately terminated and reported.
The checking method for determining whether the ABM mode is valid in the above steps 1 to 7 is applicable to the frame structure of the ABM corresponding to each BMI information segment BMHD0, BMHD1, BMHD2, BMHD 3.
In this embodiment, the first BootLoader program may implement application program downloading, boot starting the application program, and the first BootLoader program may be updated. The Header value of the first BootLoader program carries first start configuration information, and the first start configuration information may be stored in a BMHD0 information segment of the BMI. The program starting mode characterized by the first starting configuration information is an ABM mode, and in the ABM mode, the program is allowed to be executed from a user-defined address. And (3) verifying the first starting configuration information of the first BootLoader program by adopting the steps 1 to 7. Alternatively, the custom address may be the start address A000 0000 corresponding to BMHD0 in Table 1 H The custom address may also be the starting address A002 0000 corresponding to BMHD1 in Table 1 H
Step 102: under the condition that the verification of the first starting configuration information is not passed, verifying the second starting configuration information of the second BootLoader program; the program starting mode characterized by the second starting configuration information is an ABM mode.
And (3) checking whether the ABM mode is effective or not through the steps 1 to 7, and if the obtained checking result is that the ABM mode is ineffective, starting the application program cannot be guided by the first BootLoader program. The reason why the ABM mode is invalid may be that the Header value of the first BootLoader program is wrong; the reason why the ABM mode is invalid may be that the first BootLoader program is not stored in the chip, and when the first BootLoader program is not stored, the result obtained when the BMHDID is checked in step 1 is that the BMHDID is not equal to B359 H At this point the BMI verification fails and the ABM mode is disabled.
Because the invention can set two BootLoader programs in the chip, when the verification of the first starting configuration information of the first BootLoader program fails, the second starting configuration information of the second BootLoader program can be verified, and the problem that the processor cannot normally guide the processor to run the application program when the BootLoader program has a problem is solved.
In this embodiment, the second BootLoader program may implement application program downloading and boot starting of the application program, but the second BootLoader program is not upgradeable and updated. The Header value of the second BootLoader program carries second start configuration information, and the second start configuration information may be stored in the BMHD1 information segment of the BMI. The program starting mode characterized by the second starting configuration information is an ABM mode, and in the ABM mode, the program is allowed to be executed from the user-defined address. And (3) verifying the second starting configuration information of the second BootLoader program by adopting the steps 1 to 7.
Step 103: under the condition that the verification of the second starting configuration information is passed, analyzing and obtaining a starting address of the second BootLoader program from the second starting configuration information, and running the guiding information pointed by the starting address of the second BootLoader program; the boot information pointed by the boot address of the second BootLoader program is used for booting the target program.
The second boot configuration information may be stored in a BMHD1 information section of the BMI, and contents in the BMHD1 information section are shown in table 2, and as can be seen from table 2, a user program start address may be stored in a storage space corresponding to the name STADABM, where the user program start address may be a boot address of the second BootLoader program, and from the boot address, the first section of program code is executed, so as to boot the boot of the target program.
As an optional embodiment, the program starting method provided by the present invention further includes: under the condition that the verification of the first starting configuration information is passed, analyzing and obtaining a starting address of the first BootLoader program from the first starting configuration information, and running the guiding information pointed by the starting address of the first BootLoader program; the boot information pointed by the boot address of the first BootLoader program is used for booting the target program.
In this embodiment, the first boot configuration information may be stored in a BMHD0 information segment of the BMI, and the content in the BMHD0 information segment is shown in table 2, and it can be seen from table 2 that a user program start address may be stored in a storage space corresponding to the name STADABM, where the user program start address may be a boot address of the first BootLoader program, and the first program code is executed from the boot address, so as to guide the boot of the target program.
It should be noted that, as shown in table 1, the ABM mode verifies whether the valid sequence is to check the information of BMHD0 first, then check the information of BMHD1, and of course, if the start configuration information is also stored in BMHD2 and BMHD3, then check the information of BMHD2 after checking the information of BMHD1, and finally check the information of BMHD 3.
The invention stores the first starting configuration information of the first BootLoader program in BMHD0, and stores the second starting configuration information of the second BootLoader program in BMHD 1. When the chip is powered on and operates, the information in the BMHD0 is verified a priori, and when the BMHD0 is empty, the information in the BMHD1 is verified again, so that the first BootLoader program can be updated. Because the first BootLoader program needs to delete the first start configuration information of the first BootLoader program stored in the chip at first when the first BootLoader program is updated, at this time, the content of the BMHD0 is empty, when the chip is powered on and running, the content in the BMHD0 is verified to be failed, and then the content in the BMHD1 is verified, and because the second start configuration information of the second BootLoader program is stored in the BMHD1, the updated first BootLoader program can be downloaded by using the second BootLoader program.
As another optional implementation manner, the first BootLoader program carries a start address of the second BootLoader program, and after running the boot information pointed to by the start address of the first BootLoader program, the program start method of the present invention may further include: and responding to the update instruction of the first BootLoader program, analyzing and obtaining the starting address of the second BootLoader program from the first BootLoader program, running the guide information pointed by the starting address of the second BootLoader program, and downloading the updated first BootLoader program.
In the above embodiment, in order to implement the upgrade of the first BootLoader program, the chip needs to be changed from executing the first BootLoader program to executing the second BootLoader program, so that the chip can be ensured to work normally after deleting the first BootLoader program, and the first BootLoader program is downloaded through the second BootLoader program. In order to convert the chip from executing the first BootLoader program to executing the second BootLoader program, the first BootLoader program may carry the start address of the second BootLoader program, and when receiving the update instruction of the first BootLoader program, the start address of the second BootLoader program is obtained by parsing the first BootLoader program, so that the boot information pointed by the start address of the second BootLoader program may be run, thereby downloading the updated first BootLoader program. Optionally, the first BootLoader update instruction may be a custom 31 service, where the 31 service conforms to the specification of the inflight TC22x series chip manual.
The invention can realize the upgrade of the first BootLoader program, and when the first BootLoader program has a problem, the first BootLoader program can be downloaded again by using the second BootLoader program, so that the chip can work normally, and compared with the single BootLoader program, the safety and reusability of the BootLoader program are greatly improved.
It should be noted that, the present invention does not carry the start address of the first BootLoader in the second BootLoader, that is, the chip cannot directly jump to execute the first BootLoader when executing the second BootLoader, and cannot implement the upgrade of the first BootLoader. The purpose of this is to prevent the chip from failing to work properly if the first BootLoader program is skipped when the first BootLoader program is in trouble. The invention can lead the chip to jump to the second BootLoader program when executing the first BootLoader program, if the second BootLoader program has problems and the first BootLoader program has no problems, the information in the BMHD0 can be verified a priori by restarting the chip, and the information in the BMHD0 is stored by the first starting configuration information of the first BootLoader program, because the first BootLoader program has no problems, the chip can guide the starting application program through the first BootLoader program, so that the chip can work normally.
In an alternative implementation, the updated first BootLoader program may be successfully downloaded by the second BootLoader program. In this case, the updated first BootLoader program may be used to update the first BootLoader program, and after the chip is restarted, the application program may be booted through the updated first BootLoader program.
Optionally, the updating of the first BootLoader program by using the updated first BootLoader program may be a full-scale update or an incremental update. And deleting all the first BootLoader programs when the total quantity is updated, and storing the updated first BootLoader programs after the updated first BootLoader programs are downloaded successfully. And replacing part of the first BootLoader program during incremental updating, and storing the updated first BootLoader program.
In another possible implementation manner, the updated first BootLoader program is not successfully downloaded by the second BootLoader program. In this case, the first startup configuration information may be validated again, and if the first startup configuration information passes the validation, the startup address of the first BootLoader program is obtained from the first startup configuration information by parsing, and the boot information pointed by the startup address of the first BootLoader program is run. Of course, if the first startup configuration information is verified again, and the first startup configuration information fails to pass the verification, the second startup configuration information can be verified continuously, and if the second startup configuration information passes the verification, the boot information pointed by the startup address of the second BootLoader program can be run, so as to boot the startup target program.
Alternatively, the reason why the second BootLoader program does not successfully download the updated first BootLoader program may be that the message information related to the first BootLoader program is not received, which may be the case that the service has been received 31, the first BootLoader program update instruction is responded, and the first BootLoader program is not continuously updated when the first BootLoader program is jumped to the second BootLoader program to run. At this time, the second BootLoader program may start timing when the first BootLoader program jumps to the second BootLoader program, and restart the chip after the preset time period is exceeded. Alternatively, the preset duration may be 10s. The method and the device can solve the problem how to enter the first BootLoader program to run when the first BootLoader program receives 31 services and does not want to update the first BootLoader program.
Optionally, after the updated first BootLoader program is used to update the first BootLoader program, updated start configuration information may also be extracted from the updated first BootLoader program; verifying the updated starting configuration information; under the condition that the updated starting configuration information passes verification, analyzing and obtaining an updated starting address from the updated starting configuration information, and running the guiding information pointed by the updated starting address; the updated boot information pointed by the boot address is used for booting the target program.
As an optional implementation manner, under the condition of upgrading the first BootLoader program, the chip needs to be enabled to run the second BootLoader program, after the second BootLoader program runs the boot information pointed by the start address of the second BootLoader program, the second BootLoader program may delete the first BootLoader program, and when the first start configuration information is empty, the first BootLoader program is downloaded. Alternatively, the first BootLoader program may be downloaded through diagnostic services 34, 35, 36, CRC check service, etc., according to the 14229 diagnostic specification. The 14229 diagnostic specifications, diagnostic services 34, 35, 36, and CRC check service may be in compliance with the specifications of the Infrate TC22x series chip manual.
Optionally, under the condition that the first BootLoader program is not downloaded successfully, deleting the downloaded data in the first BootLoader program, and re-downloading the first BootLoader program after deleting the data.
When the download of the first BootLoader program is unsuccessful, the downloaded data in the first BootLoader program can be deleted, and the reason for this is that the check of the ABM mode is only to diagnose the Header information (Header) of the first BootLoader program, when the power-off condition occurs in the download process, if the Header information of the first BootLoader program is stored in the BMHD0, the first BootLoader program can be directly run even if the chip is restarted, and the first BootLoader program at this time is the program which is not downloaded, and the first BootLoader program is incomplete, so that the chip cannot work normally. Based on this, when the first BootLoader program is downloaded, the first BootLoader program may be stored in the power-off losing area of the chip, and when the first BootLoader program is downloaded successfully, the first start configuration information of the first BootLoader program is stored in the BMHD 0. Therefore, under the condition that the first BootLoader program is incomplete, the second BootLoader program is executed by restarting the chip, and then the second BootLoader program downloads the first BootLoader program again, so that the integrity of the first BootLoader program is ensured, and the problem that the chip cannot work normally due to the incomplete first BootLoader program is prevented.
Of course, if the first BootLoader program is not downloaded successfully, the chip may also continue to run the second BootLoader program.
Optionally, under the condition that the downloading of the first BootLoader program is successful, the first start configuration information is extracted from the first BootLoader program, the first start configuration information can be verified after the chip is restarted, under the condition that the verification of the first start configuration information is passed, the start address of the first BootLoader program is obtained by analyzing the first start configuration information, and the guide information pointed by the start address of the first BootLoader program is operated.
As an alternative implementation manner, after the boot information pointed to by the start address of the first BootLoader program is executed, a situation may occur that the chip cannot work normally when the first BootLoader program is executed, and in this case, the first start configuration information may be verified again; verifying the second starting configuration information under the condition that the first starting configuration information is not verified; and under the condition that the verification of the second starting configuration information is passed, analyzing and obtaining the starting address of the second BootLoader program from the second starting configuration information, and running the guiding information pointed by the starting address of the second BootLoader program. Therefore, the BootLoader program can be guaranteed to normally run, the application program is guided to start, and the chip can normally work.
Of course, the invention can also set 3 or 4 BootLoader programs in the chip, and the more BootLoader programs, the higher the reliability of the chip. For example, when the chip sets 3 BootLoader programs, the start configuration information of the first BootLoader program may be stored in BMHD0, the start configuration information of the second BootLoader program may be stored in BMHD1, and the start configuration information of the third BootLoader program may be stored in BMHD 2. The first BootLoader program and/or the second BootLoader program can realize application program downloading and guiding to start the application program, the first BootLoader program can be updated, the third BootLoader program can realize application program downloading and guiding to start the application program, and the third BootLoader program cannot be updated.
In an alternative embodiment, the chip may switch from the first BootLoader program to the second BootLoader program running. Specifically, after the boot information pointed by the start address of the first BootLoader program is executed, responding to the execution switching instruction, resolving the start address of the second BootLoader program from the first BootLoader program, and executing the boot information pointed by the start address of the second BootLoader program. However, if the second BootLoader program does not run normally, restarting the chip, and verifying the first start configuration information again; and under the condition that the verification of the first starting configuration information is passed, analyzing and obtaining the starting address of the first BootLoader program from the first starting configuration information, and running the guiding information pointed by the starting address of the first BootLoader program. Alternatively, restarting the chip may be an operation performed after the chip receives 1101 service, which 1101 service may be in compliance with the instructions of the Infrate TC22x series chip manual.
The program starting method provided by the invention has the following advantages:
(1) The invention checks the BMHD after the chip is electrified, stores the first starting configuration of the first BootLoader program in the BMHD0, stores the second starting configuration of the second BootLoader program in the BMHD1, and can distinguish the first BootLoader program and the second BootLoader program through different BMHD marks such as the BMHD0 and the BMHD 1.
If the first BootLoader program and the second BootLoader program are simultaneously in the processor, the first BootLoader program is checked by powering on (BMHD 0), if the first BootLoader program is valid, the second BootLoader program is not checked continuously (BMHD 1), and the processor directly executes the first BootLoader program.
If there is only a second BootLoader program in the processor, then the chip will power up to check that the flag (BMHD 0) of the first BootLoader program is inactive and then continue to check that the flag (BMHD 1) of the second BootLoader program is active, and the processor will execute the second BootLoader program directly.
If there is only a first BootLoader program in the processor, then the chip will power up to check that the flag (BMHD 0) of the first BootLoader program is valid and will not continue to check the flag (BMHD 1) of the second BootLoader program, and the processor will execute the first BootLoader program directly.
That is, no matter whether the second BootLoader program exists or not, as long as the first BootLoader program exists in the processor, the first BootLoader program can be executed, and the independence of the first BootLoader program is ensured.
(2) The second BootLoader program can simultaneously download the first BootLoader program, the application program and the calibration data; the first BootLoader program and the application program can also be downloaded separately and the data is calibrated. Therefore, even if the first BootLoader program is not provided, only the second BootLoader program can execute the functions of guiding and downloading the application program, and the independence of the second BootLoader program is ensured.
(3) The jump modes of the first BootLoader program and the second BootLoader program are as follows: if the first BootLoader program is to be updated, a service request, such as 31 services, needs to be sent to the first BootLoader program, and after the first BootLoader program receives the services, the starting address of the second BootLoader program jumps to the second BootLoader program to execute, so that the first BootLoader program is updated through the second BootLoader program. The method can realize flexible configuration of parameters and operations in the process of starting and guiding the downloading of the application program, improves flexibility, safety and reusability of the BootLoader program, and can avoid the problem that the first BootLoader program has a problem, so that the chip cannot work.
The invention also provides a program starting system, which is applied to a processor, wherein a first BootLoader program and a second BootLoader program are arranged in the processor, as shown in fig. 2, and the system comprises:
a first verification module 201, configured to verify first start configuration information of a first BootLoader program; the program starting mode characterized by the first starting configuration information is an ABM mode.
A second verification module 202, configured to verify the second start configuration information of the second BootLoader program if the first start configuration information is not verified; the program starting mode characterized by the second starting configuration information is an ABM mode.
The program starting module 203 is configured to parse from the second starting configuration information to obtain a starting address of the second BootLoader program, and run the boot information pointed by the starting address of the second BootLoader program if the second starting configuration information passes verification; the boot information pointed by the boot address of the second BootLoader program is used for booting the target program.
The program starting system further comprises:
the operation module is used for analyzing and obtaining the starting address of the first BootLoader program from the first starting configuration information under the condition that the first starting configuration information passes the verification, and operating the guiding information pointed by the starting address of the first BootLoader program; the boot information pointed by the boot address of the first BootLoader program is used for booting the target program.
And the updating module is used for responding to the updating instruction of the first BootLoader program after running the guide information pointed by the starting address of the first BootLoader program, analyzing the starting address of the second BootLoader program from the first BootLoader program, running the guide information pointed by the starting address of the second BootLoader program and downloading the updated first BootLoader program. The first BootLoader program carries the starting address of the second BootLoader program.
The downloading module is used for verifying the first starting configuration information again under the condition that the updated first BootLoader program is not successfully downloaded after the updated first BootLoader program is downloaded, and if the first starting configuration information passes the verification, the starting address of the first BootLoader program is obtained through analysis from the first starting configuration information, and the guiding information pointed by the starting address of the first BootLoader program is operated; and the method is also used for updating the first BootLoader program by using the updated first BootLoader program under the condition of successfully downloading the updated first BootLoader program.
The third verification module is used for extracting updated starting configuration information from the updated first BootLoader program after the updated first BootLoader program is used for updating the first BootLoader program; verifying the updated starting configuration information; under the condition that the updated starting configuration information passes verification, analyzing and obtaining an updated starting address from the updated starting configuration information, and running the guiding information pointed by the updated starting address; the updated boot information pointed by the boot address is used for booting the target program.
The deleting module is used for downloading the first BootLoader program when the first starting configuration information is empty after the guiding information pointed by the starting address of the second BootLoader program is operated; deleting the downloaded data in the first BootLoader program under the condition that the first BootLoader program is not downloaded successfully, and re-downloading the first BootLoader program after deleting the data; under the condition that the first BootLoader program is successfully downloaded, first starting configuration information is extracted from the first BootLoader program, the first starting configuration information is verified, under the condition that the first starting configuration information passes verification, the starting address of the first BootLoader program is obtained through analysis from the first starting configuration information, and the guiding information pointed by the starting address of the first BootLoader program is operated.
The fourth verification module is used for verifying the first starting configuration information again under the condition that the first BootLoader program does not normally run; verifying the second starting configuration information under the condition that the first starting configuration information is not verified; and under the condition that the verification of the second starting configuration information is passed, analyzing and obtaining the starting address of the second BootLoader program from the second starting configuration information, and running the guiding information pointed by the starting address of the second BootLoader program.
And the operation switching module is used for responding to the operation switching instruction after the guide information pointed by the starting address of the first BootLoader program is operated, analyzing the starting address of the second BootLoader program from the first BootLoader program, and operating the guide information pointed by the starting address of the second BootLoader program. However, if the second BootLoader program does not run normally, restarting the chip, and verifying the first start configuration information again; and under the condition that the verification of the first starting configuration information is passed, analyzing and obtaining the starting address of the first BootLoader program from the first starting configuration information, and running the guiding information pointed by the starting address of the first BootLoader program.
An embodiment of the present invention provides a computer-readable storage medium having stored thereon a program that when executed by a processor implements the above-described program starting method.
An embodiment of the present invention provides an electronic device, as shown in fig. 3, an electronic device 30 includes at least one processor 301, and at least one memory 302 and a bus 303 connected to the processor 301; wherein, the processor 301 and the memory 302 complete communication with each other through the bus 303; the processor 301 is configured to call the program instructions in the memory 302 to perform the program start method described above. The electronic device herein may be a server, a PC, a PAD, a mobile phone, etc.
The present application also provides a computer program product adapted to perform a program initialized with the steps comprised by the program start-up method described above when executed on a data processing device.
The present application is described with reference to flowchart illustrations and/or block diagrams of methods, systems and computer program products according to embodiments of the application. It will be understood that each flow and/or block of the flowchart illustrations and/or block diagrams, and combinations of flows and/or blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
In one typical configuration, the device includes one or more processors (CPUs), memory, and a bus. The device may also include input/output interfaces, network interfaces, and the like.
The memory may include volatile memory, random Access Memory (RAM), and/or nonvolatile memory, such as Read Only Memory (ROM) or flash memory (flash RAM), among other forms in computer readable media, the memory including at least one memory chip. Memory is an example of a computer-readable medium.
Computer readable media, including both non-transitory and non-transitory, removable and non-removable media, may implement information storage by any method or technology. The information may be computer readable instructions, data structures, modules of a program, or other data. Examples of storage media for a computer include, but are not limited to, phase change memory (PRAM), static Random Access Memory (SRAM), dynamic Random Access Memory (DRAM), other types of Random Access Memory (RAM), read Only Memory (ROM), electrically Erasable Programmable Read Only Memory (EEPROM), flash memory or other memory technology, compact disc read only memory (CD-ROM), digital Versatile Discs (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices, or any other non-transmission medium, which can be used to store information that can be accessed by a computing device. Computer-readable media, as defined herein, does not include transitory computer-readable media (transmission media), such as modulated data signals and carrier waves.
It will be appreciated by those skilled in the art that embodiments of the present application may be provided as a method, system, or computer program product. Accordingly, the present application may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present application may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
It is noted that relational terms such as first and second, and the like are used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. It should also be noted that the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one … …" does not exclude the presence of other like elements in a process, method, article or apparatus that comprises an element.
In this specification, each embodiment is described in a related manner, and identical and similar parts of each embodiment are all referred to each other, and each embodiment mainly describes differences from other embodiments. In particular, for system embodiments, since they are substantially similar to method embodiments, the description is relatively simple, as relevant to see a section of the description of method embodiments.
The foregoing is merely exemplary of the present application and is not intended to limit the present application. Various modifications and changes may be made to the present application by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc. which are within the spirit and principles of the present application are intended to be included within the scope of the claims of the present application.

Claims (9)

1. The program starting method is characterized in that the method is applied to a processor, a first BootLoader program and a second BootLoader program are arranged in the processor, and the method comprises the following steps:
verifying the first starting configuration information of the first BootLoader program; the program starting mode characterized by the first starting configuration information is an ABM mode;
verifying the second starting configuration information of the second BootLoader program under the condition that the first starting configuration information is not verified; the program starting mode represented by the second starting configuration information is an ABM mode;
under the condition that the verification of the second starting configuration information is passed, analyzing and obtaining a starting address of a second BootLoader program from the second starting configuration information, and running the guiding information pointed by the starting address of the second BootLoader program; the guiding information pointed by the starting address of the second BootLoader program is used for guiding the starting of the target program;
Downloading the first BootLoader program when the first starting configuration information is empty;
deleting the downloaded data in the first BootLoader program under the condition that the first BootLoader program is not downloaded successfully, and re-downloading the first BootLoader program after deleting the data;
and under the condition that the first BootLoader program is successfully downloaded, extracting the first starting configuration information from the first BootLoader program, verifying the first starting configuration information, and under the condition that the first starting configuration information is verified, analyzing and obtaining the starting address of the first BootLoader program from the first starting configuration information, and running the guiding information pointed by the starting address of the first BootLoader program.
2. The program starting method according to claim 1, further comprising:
under the condition that the verification of the first starting configuration information is passed, analyzing and obtaining a starting address of a first BootLoader program from the first starting configuration information, and running the guiding information pointed by the starting address of the first BootLoader program; the guiding information pointed by the starting address of the first BootLoader program is used for guiding the target program to start.
3. The method for starting a program according to claim 2, wherein the first BootLoader program carries a start address of the second BootLoader program, and after the running boot information pointed to by the start address of the first BootLoader program, the method further comprises:
and responding to a first BootLoader program updating instruction, analyzing and obtaining the starting address of the second BootLoader program from the first BootLoader program, running the guiding information pointed by the starting address of the second BootLoader program, and downloading the updated first BootLoader program.
4. A program starting method according to claim 3, wherein after said downloading of the updated first BootLoader program, the method further comprises:
under the condition that the updated first BootLoader program is not successfully downloaded, verifying the first starting configuration information again, if the first starting configuration information passes the verification, analyzing and obtaining a starting address of the first BootLoader program from the first starting configuration information, and running the guiding information pointed by the starting address of the first BootLoader program;
And under the condition that the updated first BootLoader program is successfully downloaded, updating the first BootLoader program by using the updated first BootLoader program.
5. The program starting method according to claim 4, wherein after the updating of the first BootLoader program using the updated first BootLoader program, the method further comprises:
extracting updated starting configuration information from the updated first BootLoader program;
verifying the updated starting configuration information;
under the condition that the updated starting configuration information passes verification, analyzing and obtaining an updated starting address from the updated starting configuration information, and running the guiding information pointed by the updated starting address; the guiding information pointed by the updated starting address is used for guiding the starting of the target program.
6. The program starting method according to claim 2, wherein after the running the boot information pointed to by the start address of the first BootLoader program, the method further comprises:
under the condition that the first BootLoader program does not normally run, verifying the first starting configuration information again;
Verifying the second starting configuration information under the condition that the first starting configuration information is not verified;
and under the condition that the verification of the second starting configuration information is passed, analyzing and obtaining the starting address of the second BootLoader program from the second starting configuration information, and running the guiding information pointed by the starting address of the second BootLoader program.
7. A program starting system, wherein the system is applied to a processor, and a first BootLoader program and a second BootLoader program are arranged in the processor, and the system comprises:
the first verification module is used for verifying the first starting configuration information of the first BootLoader program; the program starting mode characterized by the first starting configuration information is an ABM mode;
the second verification module is used for verifying the second starting configuration information of the second BootLoader program under the condition that the first starting configuration information is not verified; the program starting mode represented by the second starting configuration information is an ABM mode;
the program starting module is used for analyzing and obtaining the starting address of the second BootLoader program from the second starting configuration information under the condition that the second starting configuration information passes the verification, and running the guiding information pointed by the starting address of the second BootLoader program; the guiding information pointed by the starting address of the second BootLoader program is used for guiding the starting of the target program;
The deleting module is used for downloading the first BootLoader program when the first starting configuration information is empty; deleting the downloaded data in the first BootLoader program under the condition that the first BootLoader program is not downloaded successfully, and re-downloading the first BootLoader program after deleting the data; and under the condition that the first BootLoader program is successfully downloaded, extracting the first starting configuration information from the first BootLoader program, verifying the first starting configuration information, and under the condition that the first starting configuration information is verified, analyzing and obtaining the starting address of the first BootLoader program from the first starting configuration information, and running the guiding information pointed by the starting address of the first BootLoader program.
8. A computer-readable storage medium, characterized in that the computer-readable storage medium has stored thereon a program which, when executed by a processor, implements the program starting method of any of claims 1-6.
9. An electronic device, comprising:
at least one processor, and at least one memory, bus, connected to the processor;
The processor and the memory complete communication with each other through the bus; the processor is configured to invoke program instructions in the memory to perform the program initiation method of any of claims 1-6.
CN202210288052.8A 2022-03-23 2022-03-23 Program starting method, system, storage medium and electronic equipment Active CN114610415B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210288052.8A CN114610415B (en) 2022-03-23 2022-03-23 Program starting method, system, storage medium and electronic equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210288052.8A CN114610415B (en) 2022-03-23 2022-03-23 Program starting method, system, storage medium and electronic equipment

Publications (2)

Publication Number Publication Date
CN114610415A CN114610415A (en) 2022-06-10
CN114610415B true CN114610415B (en) 2024-01-16

Family

ID=81864583

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210288052.8A Active CN114610415B (en) 2022-03-23 2022-03-23 Program starting method, system, storage medium and electronic equipment

Country Status (1)

Country Link
CN (1) CN114610415B (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102945176A (en) * 2012-11-09 2013-02-27 青岛海信移动通信技术股份有限公司 Terminal equipment booting and updating method and equipment
CN103605536A (en) * 2013-11-06 2014-02-26 华为技术有限公司 Starting method and starting device of embedded operating system and baseboard management controller
WO2017143513A1 (en) * 2016-02-23 2017-08-31 华为技术有限公司 Method, cpu and single board for starting boot
CN107608702A (en) * 2017-10-25 2018-01-19 迈普通信技术股份有限公司 Bootloader program modules update method and device
CN109933348A (en) * 2019-01-21 2019-06-25 宁波普瑞均胜汽车电子有限公司 The update method and device of Bootloader in a kind of electronic control unit
WO2022007656A1 (en) * 2020-07-08 2022-01-13 中国第一汽车股份有限公司 Bootloader software updating method and apparatus, embedded controller, and storage medium

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6756236B2 (en) * 2016-10-31 2020-09-16 富士通株式会社 Action instruction program, action instruction method and image generator

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102945176A (en) * 2012-11-09 2013-02-27 青岛海信移动通信技术股份有限公司 Terminal equipment booting and updating method and equipment
CN103605536A (en) * 2013-11-06 2014-02-26 华为技术有限公司 Starting method and starting device of embedded operating system and baseboard management controller
WO2017143513A1 (en) * 2016-02-23 2017-08-31 华为技术有限公司 Method, cpu and single board for starting boot
CN107608702A (en) * 2017-10-25 2018-01-19 迈普通信技术股份有限公司 Bootloader program modules update method and device
CN109933348A (en) * 2019-01-21 2019-06-25 宁波普瑞均胜汽车电子有限公司 The update method and device of Bootloader in a kind of electronic control unit
WO2022007656A1 (en) * 2020-07-08 2022-01-13 中国第一汽车股份有限公司 Bootloader software updating method and apparatus, embedded controller, and storage medium

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于Tricore系列MCU CANBootloader功能的开发;毛玉虎;王海全;张志永;宋东先;;内燃机与配件(第09期);第4-7页) *

Also Published As

Publication number Publication date
CN114610415A (en) 2022-06-10

Similar Documents

Publication Publication Date Title
US20160132420A1 (en) Backup method, pre-testing method for environment updating and system thereof
CN107220074B (en) Method and device for accessing and upgrading supporting layer software function
CN109240720B (en) Firmware upgrading method of android system and storage device
CN111813428A (en) Method and device for upgrading terminal firmware, electronic equipment and storage medium
US20210294593A1 (en) Method, apparatus, device, and storage medium for upgrading vehicle-mounted tbox
AU2021206497B2 (en) Method and apparatus for authority control, computer device and storage medium
WO2018024198A1 (en) Application upgrade method and system for set-top box, and set-top box
WO2015154538A1 (en) Memory booting method and device
CN110597545A (en) Hot patch intelligent upgrading method and system based on OTA component
CN108958785B (en) Application program upgrading method and device
CN112416411B (en) Upgrading method and device, equipment end, server and computer readable medium
CN105677409A (en) System upgrading method and device
CN106708550B (en) Method and device for loading shared object library
CN114610415B (en) Program starting method, system, storage medium and electronic equipment
CN102541585A (en) Remote upgrade method and embedded system
CN115629820A (en) System secure starting method, chip system, storage medium and electronic equipment
CN112527371A (en) Boot loader upgrading method and device, electronic equipment and storage medium
US11714744B2 (en) System and method for diagnosing a computing device in safe mode
CN117234606B (en) BIOS configuration data synchronization method and device
CN116932010B (en) System firmware upgrading method, device and server
CN111666094B (en) Real-time firmware upgrading system and method
US20240053978A1 (en) Hotpatch method for vulnerabilities in embedded iot devices
TWI575459B (en) Terminal device and system upgrading method thereof
CN113900688A (en) Software upgrading method, device, server and storage medium
CN117130672A (en) Server start flow control method, system, terminal and storage medium

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