CN102023908A - Method and device for backing up boot program - Google Patents
Method and device for backing up boot program Download PDFInfo
- Publication number
- CN102023908A CN102023908A CN2010105719592A CN201010571959A CN102023908A CN 102023908 A CN102023908 A CN 102023908A CN 2010105719592 A CN2010105719592 A CN 2010105719592A CN 201010571959 A CN201010571959 A CN 201010571959A CN 102023908 A CN102023908 A CN 102023908A
- Authority
- CN
- China
- Prior art keywords
- memory block
- boot
- upgrading
- bootstrap program
- main bootstrap
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1417—Boot up procedures
Abstract
The invention discloses a method for backing up a boot program, which is used for realizing backup of the boot program and improving the reliability of system startup. The method comprises the following steps: obtaining a main boot program in a first memory area according to the default or recorded identification information in the first memory area, and starting up the main boot program, wherein the first memory area is the current memory area; after the main boot program is successfully started up, recording the identification information in the first memory area; and backing up the main boot program in the first memory area to a second memory area in the same memory. The invention also discloses a method for upgrading a boot program, which is used for realizing upgrading of the boot program. The method comprises the following steps: determining whether the boot program is needed to be upgraded after the main boot program in the first memory area is started up; if so, obtaining upgrading information; and upgrading the boot program backed up to the second memory area according to the obtained upgrading information. The invention also discloses a device for realizing the method.
Description
Technical field
The present invention relates to embedded and computer realm, particularly a kind of boot backup method and device.
Background technology
In complicated embedded product, generally need one section simple boot code in the device power or the back that resets, CPU is done necessary configuration, the guiding CPU minimum system normally starts.After the successful operation of CPU minimum system, refill the driver and the system software that carry the peripheral function device, and realize the normal operation of embedded product.
Boot code generally is stored in the nonvolatile semiconductor memory member, and the code size is generally 1K~512K byte.Because the existence of various abnormal conditions, the data in the memory device may change, and cause the failure of equipment or single board starting, influence the reliability of properties of product.Therefore, startup-program code is done necessary backup and just seem very important.Comparatively popular start-up code backup method mainly contains following three kinds at present: one, utilize two identical memory devices that guidance code is backed up, can take more hardware resource like this, also take more storage space; Two, the storer of two storage boot is set, and stipulate that one of them storer is main bootstrap memory, not only need to revise parts such as corresponding registers during the backup boot, also need former boot information is carried out corresponding modify, can make method of calibration comparatively complicated like this; Three, the memory block of two storage boot is set in a storer, and stipulate that one of them memory block is main guiding memory block, also increased storage hardware in addition with the storage chip selection signal, the each startup of system all needs from main bootstrap memory, can make toggle speed slow, starting efficiency is low, increases hardware resource in addition and deposits chip selection signal, has caused the waste of hardware resource.And said method has increased additional device, has increased the unreliable factor of system's operation simultaneously.
Summary of the invention
The embodiment of the invention provides a kind of boot backup method, is used to realize the backup to boot, has improved the reliability of system.
A kind of boot backup method may further comprise the steps:
Identification information according to first memory block acquiescence or record obtains the main bootstrap program in first memory block, and starts; Wherein, described first memory block is current memory block;
After starting successfully, write down the identification information of first memory block;
Main bootstrap program in first memory block is backuped to second memory block in the same storer.
A kind of boot upgrade method may further comprise the steps:
After starting, need to determine whether the upgrading boot according to the main bootstrap program in first memory block; Wherein, described first memory block is current memory block;
When determining to upgrade boot, obtain upgrade information;
According to the upgrade information that obtains the backup boot in second memory block is upgraded.
A kind of boot back-up device comprises:
Operational module is used for the identification information according to first memory block acquiescence or record, obtains the main bootstrap program in first memory block, and starts; Wherein, described first memory block is current memory block;
Control module is used for writing down the identification information of first memory block after starting successfully; And the main bootstrap program in first memory block backuped to second memory block in the same storer.
A kind of boot update device comprises:
Control module after being used for main bootstrap program according to first memory block and starting, need to determine whether the upgrading boot; Wherein, described first memory block is current memory block;
Operational module is used for obtaining upgrade information when determining to upgrade boot, and according to the upgrade information that obtains the backup boot in second memory block is upgraded.
The embodiment of the invention obtains the main bootstrap program in first memory block, and starts according to the identification information of first memory block acquiescence or record; Wherein, described first memory block is current memory block; After starting successfully, write down the identification information of first memory block; Main bootstrap program in first memory block is backuped to second memory block in the same storer.The embodiment of the invention provides two boot memory blocks in a storer, can not take too much hardware resource; Do not stipulate that who is the main bootstrap program memory block in two boot memory blocks, can start from this boot memory block according to the information of the boot memory block of preserving after starting last time successfully during system start-up, need not to limit and to start from the main bootstrap program memory block, make toggle speed very fast, starting efficiency is higher; Behind correct the startup with the backup code of current memory block in non-current memory block, realized the backup of boot, guaranteed the correctness of the boot that backed up.In backup procedure, need not the code of current memory block is made modification, and just revised part such as corresponding registers, it is less to revise content, and checking procedure is fairly simple, can directly back up, and operating process is easy.And the identification information that writes down current memory block can be finished by software during as chip selection signal, need not to take hardware resource.
The embodiment of the invention also after starting according to the main bootstrap program in first memory block, need to determine whether the upgrading boot; When determining to upgrade boot, obtain upgrade information; According to the upgrade information that obtains the backup boot in second memory block is upgraded.The embodiment of the invention is chosen in the non-current memory block upgrades, and to avoid unsuccessful causing veneer to start once more because of upgrading, has improved the reliability of system.
Description of drawings
Fig. 1 is the primary structure figure of boot back-up device in the embodiment of the invention;
Fig. 2 is the detailed structure view of boot back-up device in the embodiment of the invention;
Fig. 3 is the main process flow diagram of boot backup method in the embodiment of the invention;
Fig. 4 judges whether to start successful detailed method process flow diagram in the embodiment of the invention;
Fig. 5 starts the successfully detailed method process flow diagram of back backup boot in the embodiment of the invention;
The detailed method process flow diagram of Fig. 6 for proceeding to upgrade after starting successfully in the embodiment of the invention;
Fig. 7 is the detailed method process flow diagram of the current memory block that whether needs in the embodiment of the invention to upgrade after determining non-current memory block upgrading failure.
Embodiment
The embodiment of the invention obtains the main bootstrap program in first memory block, and starts according to the identification information of first memory block acquiescence or record; Wherein, described first memory block is current memory block; After starting successfully, write down the identification information of first memory block; Main bootstrap program in first memory block is backuped to second memory block in the same storer.The embodiment of the invention provides two boot memory blocks in a storer, can not take too much hardware resource; Do not stipulate that who is the main bootstrap program memory block in two boot memory blocks, can start from this boot memory block according to the information of the boot memory block of preserving after starting last time successfully during system start-up, need not to limit and to start from the main bootstrap program memory block, make toggle speed very fast, starting efficiency is higher; Behind correct the startup with the backup code of current memory block in non-current memory block, realized the backup of boot, guaranteed the correctness of the boot that backed up.In backup procedure, need not the code of current memory block is made modification, can directly back up, operating process is easy.And the identification information that writes down current memory block can be finished by software during as chip selection signal, need not to take hardware resource.
The embodiment of the invention also after starting according to the main bootstrap program in first memory block, need to determine whether the upgrading boot; When determining to upgrade boot, obtain upgrade information; According to the upgrade information that obtains the backup boot in second memory block is upgraded.The embodiment of the invention is chosen in the non-current memory block upgrades, and to avoid unsuccessful causing veneer to start once more because of upgrading, has improved the reliability of system.
Referring to Fig. 1, the boot back-up device comprises operational module 101 and control module 102 in the embodiment of the invention.
Wherein, described upgrading frequency of failure N can be preset value, can be kept in the control module 102, one second counter can be arranged in the control module 102, be used to calculate the upgrading frequency of failure to a certain boot memory block, upgrade once in every pair of a certain boot memory block, then the value of second counter adds 1.
Preferable, operational module 101 can be specially CPU.Operational module 101 can be positioned on the veneer.
Preferable, control module 102 can be specially programmable logic device (PLD), for example, can be EPLD (Erasable Programmable Logic Device).Control module 102 can be positioned on the veneer, also can not be positioned on the veneer.Control module 102 does not reset when operational module 101 carries out reset operation.
Referring to Fig. 2, described device also comprises memory module 103, comparison module 104 and judge module 105.
Before carrying out escalation process, whether the main bootstrap program of the at first more current storage area stores of comparison module 104 is consistent with the backup boot of non-current storage area stores, if it is inconsistent, then notifying operation module 101 can begin updating operation, otherwise notifying operation module 101 need not to upgrade.With current memory block is first memory block, and non-current memory block is that second memory block is an example.In escalation process, after the upgrade information that operational module 101 is preserved according to self was upgraded to second memory block, the upgrade information that comparison module 104 also is used for preservation in backup boot that second memory block after the upgrading is stored and the operational module 101 compared.Wherein, upgraded in second memory block, the upgrade information that is about in the operational module 101 is burnt in the non-current memory block.After burning finishes, the backup boot of storing in second memory block after upgrade information in the operational module 101 and the burning is compared, if the backup boot of storing in second memory block after the upgrading is consistent with the upgrade information of preservation in the operational module 101, then determine the burning success, the backup boot of storing in second memory block after can notify control module 102 to upgrade this moment is set to main bootstrap program, if the upgrade information of preserving in backup boot of storing in second memory block after the upgrading and the operational module 101 is inconsistent, then determine burning failure, then can notifying operation module 101 upgrade again, perhaps abandon upgrading.After upgrading successfully to the backup boot of storing in second memory block, comparison module 104 can be received the notice of operational module 101, the backup boot of storing in the main bootstrap program stored in first memory block and second memory block is compared, if the backup boot of having upgraded of storing in the main bootstrap program of the not upgrading of storing in first memory block and second memory block is inconsistent, then can the boot of storing in second memory block be copied in first memory block notifying operation module 101.
Introduce the boot backup method below by concrete flow process.
Referring to Fig. 3, the main method flow process of boot backup is as follows in the embodiment of the invention:
Step 301: the identification information according to first memory block acquiescence or record obtains the main bootstrap program in first memory block, and starts.
Step 302: after starting successfully, write down the identification information of first memory block.
Step 303: the main bootstrap program in first memory block is backuped to second memory block in the same storer.
Referring to Fig. 4, it is as follows to judge whether to start successful detailed method flow process in the embodiment of the invention:
Step 401: Board Power up.Whether the embodiment of the invention starts with veneer successfully is example.
Step 402: read the boot memory block information that last success starts.Wherein, after operational module 101 successfully starts, control module 102 is preserved the information of the boot memory block that successfully starts, at least the identification information that comprises the boot memory block that this success starts in this information is so that operational module 101 is determined the address information of this boot memory block according to this identification information.Be that first memory block is an example with this boot memory block in the embodiment of the invention.
Step 403: open control counter.Control module 102 is opened control counter, and control counter begins counting.Preferable, this control counter can be the house dog counter.
Step 404: the boot of storing in first memory block is switched to main bootstrap program.
Step 405: begin to start according to the main bootstrap program of storing in this first memory block.Wherein, step 403 and step 404 need be carried out simultaneously.Control module 102 sends to operational module 101 with the identification information of this boot memory block, and with as chip selection signal, described chip selection signal is the identification information of the boot memory block of the successful startup of record in the step 402.Operational module 101 is defined as main bootstrap program according to this chip selection signal with the boot of storing in this first memory block, and the beginning start-up course.
Step 406: judge whether control counter overflows.When judged result when being, continue step 407.Otherwise continue step 413.
Step 407: judge that whether the number of times that starts is greater than M.When judged result for not the time, continue step 408, otherwise continue step 412.Judge that by the value of first counter whether the number of times that starts is greater than M.
Step 408: the backup boot of storing in second memory block is switched to main bootstrap program, and Reset Board.Control module 102 zero clearings and closing control counter in Reset Board, this control counter begins to count again.If operational module 101 and control module 102 all are positioned on the veneer, then the operation of the Reset Board in this step should change reset operation module 101 into, two control modules 102 are not positioned on the veneer on the veneer if operational module 101 is positioned at, and then can be Reset Board in this step.
Step 409: start according to the main bootstrap program of storing in second memory block.
Step 410: judge whether control counter overflows.When judged result when being, continue step 411, otherwise continue step 413.
Step 411: judge that whether the number of times that starts is greater than M.When judged result for not the time, continue step 404, and in execution in step 404, also need Reset Board, otherwise continue step 412.
Step 412: determine to start failure, send warning information.
Step 413: determine to start successfully, preserve the identification information of current memory block.Control module 102 zero clearings are simultaneously also closed counter.
Referring to Fig. 5, the embodiment of the invention is for starting the successfully detailed method flow process of back backup boot:
Step 501: start successfully, preserve the identification information of current memory block.This step is same step with step 413 in the flow process shown in Figure 4, can also carry out following flow process after the step 413 in executing Fig. 4 flow process.Be first memory block with current memory block in the embodiment of the invention, non-current memory block is that second memory block is an example.
Step 502: judge whether the backup boot of storing in the main bootstrap program stored in first memory block and second memory block is consistent.When judged result for not the time, continue step 503, otherwise continue step 505.
Step 503: the main bootstrap program of storing in first memory block is backuped to second memory block.Store in first memory block after being about to successfully to start main bootstrap program carry out back-up processing.Wherein, backup method can be to duplicate.
Step 504: judge whether the backup boot of storing in the main bootstrap program stored in first memory block and second memory block is consistent.When judged result for not the time, continue step 503, otherwise continue step 505.This step mistake occurs in order to prevent in backup procedure.
Step 505: the boot backup is finished.
After the step 505 in executing Fig. 5 flow process, the backup boot that can also continue to store in second memory block switches to main bootstrap program, carry out reset operation, proceed start-up course, whether can make operational module 101 finish startup with the boot after the checking backup.
Referring to Fig. 6, the detailed method flow process of proceeding to upgrade after starting successfully in the embodiment of the invention is as follows:
Step 601: upgraded in second memory block.The upgrade information that is about in the operational module 101 is burnt in the non-current memory block.In the embodiment of the invention, described second memory block is non-current memory block, and first memory block is current memory block.
Step 602: whether the boot of judging institute's burning in second memory block is consistent with upgrade information.After burning finishes, upgrade information of preserving in the operational module 101 and the boot that is burnt in second memory block are compared, if the upgrade information in the operational module 101 is consistent with boot in being burnt to non-current memory block, the burning success then is described, if the upgrade information in the operational module 101 is inconsistent with the boot that is burnt in the non-current memory block, illustrate that then burning is unsuccessful, need carry out burning again.When judged result when being, continue step 603, otherwise continue step 601.
Step 603: the chip selection signal after will upgrading sends to operational module 101, opens control counter.The identification information of second memory block after module 103 will be upgraded sends to operational module 101 as chip selection signal, and opens control counter, and this control counter begins counting.
Step 604: the backup boot after the upgrading of storing in second memory block is set to main bootstrap program, carry out reset operation, the backup boot of operational module 101 after according to the upgrading of storing in described chip selection signal second memory block is set to main bootstrap program.
Step 605: start according to the main bootstrap program of storing in second memory block.
Step 606: judge whether control counter overflows.When judged result when being, continue step 607, otherwise continue step 610.When judged result when being, upgrading failure this time being described, otherwise explanation is upgraded successfully.
Step 607: judge that whether the upgrading frequency of failure is greater than N.When judged result for not the time, continue step 608, otherwise continue step 609.Judge that by the value of second counter whether the upgrading frequency of failure is greater than N.
Step 608: the backup boot of storing in first memory block is switched to main bootstrap program, carry out reset operation.Continue step 601.Control module 102 is with the control counter zero clearing at this moment, and control counter begins to count again.
Step 609: determine non-current memory block upgrading failure.Can send warning information this moment.
Step 610: determine that non-current memory block upgrades successfully.
Referring to Fig. 7, the embodiment of the invention is the detailed method flow process of the current memory block that whether needs to upgrade after determining non-current memory block upgrading failure:
Step 701: determine the upgrading failure of second memory block.This step is same step with step 612 in the flow process shown in Figure 6, after the step 612 in executing flow process shown in Figure 6, can continue to carry out following steps.In the embodiment of the invention, second memory block is non-current memory block, and first memory block is current memory block.
Step 702: need to judge whether upgrading first memory block.When judged result when being, continue step 703, otherwise process ends.
Step 703: the main bootstrap program of storing in first memory block is copied to second memory block.Wherein, before duplicating, need to wipe earlier the backup boot of storing in second memory block.
Step 704: carry out reset operation.Control module 102 is with the control counter zero clearing at this moment, and control counter begins to count again.
Step 705: the backup boot of storing in second memory block is switched to main bootstrap program.
Step 706: upgraded in first memory block.The upgrade information that is about in the operational module 101 is burnt in first memory block.This step is same step with step 601 shown in Figure 6, and following flow process is also consistent with Fig. 6.Promptly to the upgrading failure of non-current memory block the time, attempt upgrading is proceeded in current memory block.Wherein, can be to upgrade automatically after operational module 101 successfully starts, also can be after receiving upgrade notification, to upgrade.
The embodiment of the invention obtains the main bootstrap program in first memory block, and starts according to the identification information of first memory block acquiescence or record; Wherein, described first memory block is current memory block; After starting successfully, write down the identification information of first memory block; Main bootstrap program in first memory block is backuped to second memory block in the same storer.The embodiment of the invention provides two boot memory blocks in a storer, can not take too much hardware resource; Do not stipulate that who is the main bootstrap program memory block in two boot memory blocks, can start from this boot memory block according to the information of the boot memory block of preserving after starting last time successfully during system start-up, need not to limit and to start from the main bootstrap program memory block, make toggle speed very fast, starting efficiency is higher; Behind correct the startup with the backup code of current memory block in non-current memory block, realized the backup of boot, guaranteed the correctness of the boot that backed up.In backup procedure, need not the code of current memory block is made modification, can directly back up, operating process is easy.And the identification information that writes down current memory block can be finished by software during as chip selection signal, need not to take hardware resource.The embodiment of the invention also need to determine the upgrading boot under the main bootstrap program in first memory block; Obtain upgrade information; According to the upgrade information that obtains the backup boot in second memory block is upgraded.The embodiment of the invention is chosen in the non-current memory block upgrades, and to avoid unsuccessful causing veneer to start once more because of upgrading, has improved the reliability of system.Be provided with the higher limit that operational module 101 starts total degree, surpass this higher limit, then determine to start failure, avoid operational module 101 ceaselessly to start if start total degree, the waste resource, and damage hardware easily.After operational module 101 correct startups, or after receiving upgrade notification, operational module 101 can be upgraded to the boot memory block, to obtain higher boot version, single-board starting process is optimized more.Before upgrading, the backup boot of storing in the main bootstrap program stored in the current memory block and the non-current memory block is compared, if the two is inconsistent, carry out escalation process, otherwise need not to upgrade, avoid the waste of resource.In escalation process, at first upgrade information is carried out verification, to guarantee the correctness of upgrade information, after upgrading is finished, also need to start according to the boot of storing in the boot memory block after the upgrading, whether successful with further checking upgrading, and, be to be upgraded in non-current memory block, to guarantee that operational module 101 can also start according to the main bootstrap program of storing in the current memory block when upgrading is unsuccessful.And, according to method and the device that the embodiment of the invention is introduced, can support online upgrading, be provided with the upper limit of the upgrading frequency of failure, the fault that may occur during to upgrading has been made processing, has guaranteed the correctness of upgrading.
Those skilled in the art should understand that embodiments of the invention can be provided as method, system or computer program.Therefore, the present invention can adopt complete hardware embodiment, complete software implementation example or in conjunction with the form of the embodiment of software and hardware aspect.And the present invention can adopt the form that goes up the computer program of implementing in one or more computer-usable storage medium (including but not limited to magnetic disk memory and optical memory etc.) that wherein include computer usable program code.
The present invention is that reference is described according to the process flow diagram and/or the block scheme of method, equipment (system) and the computer program of the embodiment of the invention.Should understand can be by the flow process in each flow process in computer program instructions realization flow figure and/or the block scheme and/or square frame and process flow diagram and/or the block scheme and/or the combination of square frame.Can provide these computer program instructions to the processor of multi-purpose computer, special purpose computer, Embedded Processor or other programmable data processing device to produce a machine, make the instruction of carrying out by the processor of computing machine or other programmable data processing device produce to be used for the device of the function that is implemented in flow process of process flow diagram or a plurality of flow process and/or square frame of block scheme or a plurality of square frame appointments.
These computer program instructions also can be stored in energy vectoring computer or the computer-readable memory of other programmable data processing device with ad hoc fashion work, make the instruction that is stored in this computer-readable memory produce the manufacture that comprises command device, this command device is implemented in the function of appointment in flow process of process flow diagram or a plurality of flow process and/or square frame of block scheme or a plurality of square frame.
These computer program instructions also can be loaded on computing machine or other programmable data processing device, make on computing machine or other programmable devices and to carry out the sequence of operations step producing computer implemented processing, thereby the instruction of carrying out on computing machine or other programmable devices is provided for being implemented in the step of the function of appointment in flow process of process flow diagram or a plurality of flow process and/or square frame of block scheme or a plurality of square frame.
Obviously, those skilled in the art can carry out various changes and modification to the present invention and not break away from the spirit and scope of the present invention.Like this, if of the present invention these are revised and modification belongs within the scope of claim of the present invention and equivalent technologies thereof, then the present invention also is intended to comprise these changes and modification interior.
Claims (16)
1. a boot backup method is characterized in that, may further comprise the steps:
Identification information according to first memory block acquiescence or record obtains the main bootstrap program in first memory block, and starts; Wherein, described first memory block is current memory block;
After starting successfully, write down the identification information of first memory block;
Main bootstrap program in first memory block is backuped to second memory block in the same storer.
2. the method for claim 1 is characterized in that, is starting when successfully before receiving reset signal, also comprises step: carry out reset operation, restart after second memory block is switched to current memory block, and record starts total degree again.
3. method as claimed in claim 2 is characterized in that, when receiving reset signal, also comprises at every turn: whether judge to start total degree greater than first setting value, when judged result when being, determine to start and fail, send warning information.
4. method as claimed in claim 1 or 2, it is characterized in that, after starting successfully, also comprised before the main bootstrap program in first memory block is backuped to second memory block: whether the main bootstrap program of judging first storage area stores is consistent with the backup boot of second storage area stores, when judged result for not the time, the main bootstrap program of first storage area stores is backuped to second memory block.
5. a boot upgrade method is characterized in that, may further comprise the steps:
After starting, need to determine whether the upgrading boot according to the main bootstrap program in first memory block; Wherein, described first memory block is current memory block;
When determining to upgrade boot, obtain upgrade information;
According to the upgrade information that obtains the backup boot in second memory block is upgraded.
6. method as claimed in claim 5, it is characterized in that, determine to need also to comprise step before the upgrading boot: whether the main bootstrap program of judging first storage area stores consistent with the backup boot of second storage area stores, when judged result for not the time, need to determine the upgrading boot.
7. method as claimed in claim 5 is characterized in that, also comprise step after according to the upgrade information that obtains the backup boot in second memory block being upgraded: second memory block after will upgrading switches to current memory block; Start according to the main bootstrap program in this second memory block, when starting successfully, determine to upgrade successfully.
8. method as claimed in claim 7 is characterized in that, also comprises step after the main bootstrap program of storing in according to this second memory block starts:
Judge whether control counter overflows, when judged result for not the time, determine to start successfully, and then definite the upgrading successfully;
When judged result when being, continue to judge that whether the upgrading frequency of failure is greater than second preset value, when the upgrading frequency of failure is not more than second preset value, backup boot in first memory block is switched to main bootstrap program, carry out reset operation, and start according to the main bootstrap program of storing in this first memory block;
When the upgrading frequency of failure during greater than second preset value, determine upgrading failure to second memory block, send warning information, and judge whether and to upgrade to first memory block, when needs are upgraded to first memory block, the information reproduction of first storage area stores to described second memory block, is carried out reset operation, and described second memory block switched to current memory block, start according to the main bootstrap program of storing in second memory block.
9. a boot back-up device is characterized in that, comprising:
Operational module is used for the identification information according to first memory block acquiescence or record, obtains the main bootstrap program in first memory block, and starts; Wherein, described first memory block is current memory block;
Control module is used for writing down the identification information of first memory block after starting successfully; And the main bootstrap program in first memory block backuped to second memory block in the same storer.
10. device as claimed in claim 9 is characterized in that, described control module also is used for carrying out reset operation when successfully before receiving reset signal starting, and record starts total degree; Described operational module restarts after also being used for second memory block switched to current memory block again.
11. device as claimed in claim 10 is characterized in that, also comprises: judge module, be used for when receiving reset signal at every turn, judge whether to start total degree greater than first setting value;
Described control module also be used for when judged result when being, determine to start failure, send warning information.
12. as claim 9 or 10 described devices, it is characterized in that, also comprise: comparison module, be used for after starting successfully, judge whether the main bootstrap program of first storage area stores is consistent with the backup boot of second storage area stores;
Described operational module also be used for when judged result for not the time, the main bootstrap program of first storage area stores is backuped to second memory block.
13. a boot update device is characterized in that, comprising:
Control module after being used for main bootstrap program according to first memory block and starting, need to determine whether the upgrading boot; Wherein, described first memory block is current memory block;
Operational module is used for obtaining upgrade information when determining to upgrade boot, and according to the upgrade information that obtains the backup boot in second memory block is upgraded.
14. device as claimed in claim 13, it is characterized in that, also comprise: comparison module is used to judge whether the main bootstrap program of first storage area stores is consistent with the backup boot of second storage area stores, when judged result for not the time, need to determine the upgrading boot.
15. device as claimed in claim 13 is characterized in that, described operational module also is used for second memory block after the upgrading is switched to current memory block; Start according to the main bootstrap program in this second memory block, when starting successfully, determine to upgrade successfully.
16. device as claimed in claim 15 is characterized in that, described control module is used to also judge whether control counter overflows, when judged result for not the time, determine to start successfully, and then definite the upgrading successfully; And, send warning information when the frequency of failure of upgrading during greater than second preset value;
Also comprise: judge module, be used for when judged result when being, continue to judge that whether the upgrading frequency of failure is greater than second preset value; When the upgrading frequency of failure during, continue to judge whether and to upgrade to first memory block greater than second preset value;
Described operational module also is used for when the upgrading frequency of failure is not more than second preset value backup boot in first memory block being switched to main bootstrap program, carries out reset operation, starts according to the main bootstrap program of storing in this first memory block; When the upgrading frequency of failure during, determine upgrading failure to second memory block greater than second preset value; And when needs are upgraded to first memory block, the information reproduction of first storage area stores is arrived described second memory block, carry out reset operation, described second memory block is switched to current memory block, start according to the main bootstrap program of storing in second memory block.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010571959.2A CN102023908B (en) | 2010-12-03 | 2010-12-03 | Method and device for backing up boot program |
PCT/CN2011/080599 WO2012071945A1 (en) | 2010-12-03 | 2011-10-10 | Method and device for backing up and upgrading bootstrap |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010571959.2A CN102023908B (en) | 2010-12-03 | 2010-12-03 | Method and device for backing up boot program |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102023908A true CN102023908A (en) | 2011-04-20 |
CN102023908B CN102023908B (en) | 2015-06-03 |
Family
ID=43865229
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010571959.2A Active CN102023908B (en) | 2010-12-03 | 2010-12-03 | Method and device for backing up boot program |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN102023908B (en) |
WO (1) | WO2012071945A1 (en) |
Cited By (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102169445A (en) * | 2011-05-13 | 2011-08-31 | 合肥华云通信技术有限公司 | Security upgrading method for BootRom |
WO2012071945A1 (en) * | 2010-12-03 | 2012-06-07 | 中兴通讯股份有限公司 | Method and device for backing up and upgrading bootstrap |
CN102916776A (en) * | 2012-10-15 | 2013-02-06 | 青岛海信宽带多媒体技术有限公司 | Method and device for optical module parameter transmission |
CN103092662A (en) * | 2013-02-04 | 2013-05-08 | 烽火通信科技股份有限公司 | Software module upgrading method for terminal device based on embedded operating system |
CN103136005A (en) * | 2011-11-28 | 2013-06-05 | 英业达科技有限公司 | Method of updating firmware |
CN104281479A (en) * | 2014-10-31 | 2015-01-14 | 深圳市大疆创新科技有限公司 | Firmware upgrading method and device |
CN105204839A (en) * | 2014-06-10 | 2015-12-30 | 富士施乐株式会社 | Electronic apparatus and information processing method |
CN105279042A (en) * | 2014-07-15 | 2016-01-27 | 华耀(中国)科技有限公司 | Redundant backup system and method for BSD system |
CN105279046A (en) * | 2015-11-04 | 2016-01-27 | 研华科技(中国)有限公司 | Method for improving reliability of embedded system |
CN105320529A (en) * | 2014-07-08 | 2016-02-10 | 中兴通讯股份有限公司 | Boot method and device based on NAND-Flash double-boot guidance |
CN106095619A (en) * | 2016-06-08 | 2016-11-09 | 杭州华三通信技术有限公司 | A kind of virtual machine backup method and device |
CN106293822A (en) * | 2016-08-04 | 2017-01-04 | 青岛海信电器股份有限公司 | A kind of from the method and device processing chip upgrade |
CN106952425A (en) * | 2017-02-15 | 2017-07-14 | 深圳市新国都支付技术有限公司 | A kind of terminal remote upgrade method and POS terminal |
CN109375941A (en) * | 2018-09-29 | 2019-02-22 | 延锋伟世通电子科技(南京)有限公司 | A kind of novel master-slave mode flash boot loader method for upgrading software applied to combination instrument |
CN109656602A (en) * | 2019-01-09 | 2019-04-19 | 合肥联宝信息技术有限公司 | A kind of code upgrade method and electronic equipment |
CN110007971A (en) * | 2019-03-25 | 2019-07-12 | 联想(北京)有限公司 | A kind of information processing method and device, equipment, storage medium |
CN110532014A (en) * | 2019-08-20 | 2019-12-03 | 海信(广东)空调有限公司 | Programme upgrade method, device, terminal device and computer readable storage medium |
CN110688135A (en) * | 2019-09-20 | 2020-01-14 | 浙江吉利汽车研究院有限公司 | Program flashing method, device and medium for controller |
CN111061514A (en) * | 2019-10-30 | 2020-04-24 | 翱捷智能科技(上海)有限公司 | Flash device, integrated circuit and Flash device starting method |
CN111352798A (en) * | 2020-01-19 | 2020-06-30 | 湖北三江航天红峰控制有限公司 | DSP chip-based multi-boot program execution method and device |
CN112130914A (en) * | 2020-09-04 | 2020-12-25 | 山东云海国创云计算装备产业创新中心有限公司 | Uboot starting method, device, equipment and medium |
CN112612642A (en) * | 2020-12-17 | 2021-04-06 | 上海芯安信息科技有限公司 | Software starting and upgrading failure backspacing method and device and terminal equipment |
CN112650513A (en) * | 2020-12-28 | 2021-04-13 | 深圳市亚辉龙生物科技股份有限公司 | Program upgrading method and device, computer equipment and storage medium |
WO2022133873A1 (en) * | 2020-12-24 | 2022-06-30 | Intel Corporation | Configurable fault tolerant mechanism |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104915226B (en) * | 2015-05-21 | 2018-12-14 | 北京星网锐捷网络技术有限公司 | A kind of network device software starting method, apparatus and the network equipment |
CN110427286B (en) * | 2019-08-09 | 2022-11-11 | 成都千立网络科技有限公司 | Gateway server main and standby system recovery method |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030074535A1 (en) * | 2001-09-14 | 2003-04-17 | Eric Owhadi | Method of initiating a backup procedure |
CN1749963A (en) * | 2004-09-14 | 2006-03-22 | 华为技术有限公司 | Upgrading method for Boot software and recovering method for Boot software |
CN101169728A (en) * | 2007-11-22 | 2008-04-30 | 中兴通讯股份有限公司 | Dualboot starting device and method |
CN101256527A (en) * | 2008-03-12 | 2008-09-03 | 中兴通讯股份有限公司 | Backup method and apparatus for bootstrap |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100549959C (en) * | 2007-10-26 | 2009-10-14 | 中兴通讯股份有限公司 | Bootstrap on-line upgrading method |
CN102023908B (en) * | 2010-12-03 | 2015-06-03 | 中兴通讯股份有限公司 | Method and device for backing up boot program |
-
2010
- 2010-12-03 CN CN201010571959.2A patent/CN102023908B/en active Active
-
2011
- 2011-10-10 WO PCT/CN2011/080599 patent/WO2012071945A1/en active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030074535A1 (en) * | 2001-09-14 | 2003-04-17 | Eric Owhadi | Method of initiating a backup procedure |
CN1749963A (en) * | 2004-09-14 | 2006-03-22 | 华为技术有限公司 | Upgrading method for Boot software and recovering method for Boot software |
CN101169728A (en) * | 2007-11-22 | 2008-04-30 | 中兴通讯股份有限公司 | Dualboot starting device and method |
CN101256527A (en) * | 2008-03-12 | 2008-09-03 | 中兴通讯股份有限公司 | Backup method and apparatus for bootstrap |
Cited By (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012071945A1 (en) * | 2010-12-03 | 2012-06-07 | 中兴通讯股份有限公司 | Method and device for backing up and upgrading bootstrap |
CN102169445B (en) * | 2011-05-13 | 2013-12-04 | 合肥华云通信技术有限公司 | Security upgrading method for BootRom |
CN102169445A (en) * | 2011-05-13 | 2011-08-31 | 合肥华云通信技术有限公司 | Security upgrading method for BootRom |
CN103136005A (en) * | 2011-11-28 | 2013-06-05 | 英业达科技有限公司 | Method of updating firmware |
CN102916776A (en) * | 2012-10-15 | 2013-02-06 | 青岛海信宽带多媒体技术有限公司 | Method and device for optical module parameter transmission |
CN102916776B (en) * | 2012-10-15 | 2015-09-09 | 青岛海信宽带多媒体技术有限公司 | optical module parameter transmission method and device |
CN103092662A (en) * | 2013-02-04 | 2013-05-08 | 烽火通信科技股份有限公司 | Software module upgrading method for terminal device based on embedded operating system |
CN105204839A (en) * | 2014-06-10 | 2015-12-30 | 富士施乐株式会社 | Electronic apparatus and information processing method |
CN105204839B (en) * | 2014-06-10 | 2019-08-16 | 富士施乐株式会社 | Electronic equipment and information processing method |
CN105320529A (en) * | 2014-07-08 | 2016-02-10 | 中兴通讯股份有限公司 | Boot method and device based on NAND-Flash double-boot guidance |
CN105279042A (en) * | 2014-07-15 | 2016-01-27 | 华耀(中国)科技有限公司 | Redundant backup system and method for BSD system |
CN104281479A (en) * | 2014-10-31 | 2015-01-14 | 深圳市大疆创新科技有限公司 | Firmware upgrading method and device |
CN105279046A (en) * | 2015-11-04 | 2016-01-27 | 研华科技(中国)有限公司 | Method for improving reliability of embedded system |
CN106095619A (en) * | 2016-06-08 | 2016-11-09 | 杭州华三通信技术有限公司 | A kind of virtual machine backup method and device |
CN106293822A (en) * | 2016-08-04 | 2017-01-04 | 青岛海信电器股份有限公司 | A kind of from the method and device processing chip upgrade |
CN106952425A (en) * | 2017-02-15 | 2017-07-14 | 深圳市新国都支付技术有限公司 | A kind of terminal remote upgrade method and POS terminal |
CN106952425B (en) * | 2017-02-15 | 2019-05-14 | 深圳市新国都支付技术有限公司 | A kind of terminal remote upgrade method and POS terminal |
CN109375941B (en) * | 2018-09-29 | 2022-01-07 | 延锋伟世通电子科技(南京)有限公司 | Novel master-slave flash boot loader software upgrading method applied to combination instrument |
CN109375941A (en) * | 2018-09-29 | 2019-02-22 | 延锋伟世通电子科技(南京)有限公司 | A kind of novel master-slave mode flash boot loader method for upgrading software applied to combination instrument |
CN109656602A (en) * | 2019-01-09 | 2019-04-19 | 合肥联宝信息技术有限公司 | A kind of code upgrade method and electronic equipment |
CN110007971A (en) * | 2019-03-25 | 2019-07-12 | 联想(北京)有限公司 | A kind of information processing method and device, equipment, storage medium |
CN110532014A (en) * | 2019-08-20 | 2019-12-03 | 海信(广东)空调有限公司 | Programme upgrade method, device, terminal device and computer readable storage medium |
CN110532014B (en) * | 2019-08-20 | 2023-06-30 | 海信(广东)空调有限公司 | Program upgrading method, device, terminal equipment and computer readable storage medium |
CN110688135A (en) * | 2019-09-20 | 2020-01-14 | 浙江吉利汽车研究院有限公司 | Program flashing method, device and medium for controller |
CN111061514A (en) * | 2019-10-30 | 2020-04-24 | 翱捷智能科技(上海)有限公司 | Flash device, integrated circuit and Flash device starting method |
CN111352798A (en) * | 2020-01-19 | 2020-06-30 | 湖北三江航天红峰控制有限公司 | DSP chip-based multi-boot program execution method and device |
CN112130914A (en) * | 2020-09-04 | 2020-12-25 | 山东云海国创云计算装备产业创新中心有限公司 | Uboot starting method, device, equipment and medium |
CN112612642A (en) * | 2020-12-17 | 2021-04-06 | 上海芯安信息科技有限公司 | Software starting and upgrading failure backspacing method and device and terminal equipment |
WO2022133873A1 (en) * | 2020-12-24 | 2022-06-30 | Intel Corporation | Configurable fault tolerant mechanism |
CN112650513A (en) * | 2020-12-28 | 2021-04-13 | 深圳市亚辉龙生物科技股份有限公司 | Program upgrading method and device, computer equipment and storage medium |
CN112650513B (en) * | 2020-12-28 | 2024-01-16 | 深圳市亚辉龙生物科技股份有限公司 | Program upgrading method, device, computer equipment and storage medium |
Also Published As
Publication number | Publication date |
---|---|
CN102023908B (en) | 2015-06-03 |
WO2012071945A1 (en) | 2012-06-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102023908A (en) | Method and device for backing up boot program | |
US8683457B1 (en) | Updating firmware of an electronic device by storing a version identifier in a separate header | |
JP5909264B2 (en) | Secure recovery apparatus and method | |
CN102033790B (en) | Method and device for upgrading embedded-type system BOOTROM | |
KR101375992B1 (en) | Handling errors during device bootup from a non-volatile memory | |
JP5575338B2 (en) | Information processing apparatus, information processing method, and computer program | |
CN105094927B (en) | A kind of device firmware upgrade method and apparatus | |
CN103299276A (en) | Software updating process for an embedded device | |
CN102024502B (en) | Flash device testing method and device as well as board and network equipment | |
CN101373451B (en) | Computer system for protecting double-basic input /output system program and control method thereof | |
KR20170040734A (en) | Electronic system with update control mechanism and method of operation thereof | |
US20060224874A1 (en) | Method for updating system management basic input output system (SMBIOS) data | |
CN105677398A (en) | Universal embedded computer software on-line upgrading method | |
CN113064604B (en) | Firmware upgrading method and device | |
JP2008504628A (en) | Safe flushing | |
CN108733517A (en) | SSD firmware upgrades guard method and device | |
CN113744064A (en) | Method and apparatus for performing transactions in block link points | |
CN109375953B (en) | Operating system starting method and device | |
CN116450244B (en) | Chip starting method, device, computer equipment and storage medium | |
CN111124294B (en) | Sector mapping information management method and device, storage medium and equipment | |
CN114398087B (en) | Method for improving running stability of singlechip after program updating and singlechip | |
CN101546281A (en) | Method and device for improving reliability of embedded system | |
JP2014089497A (en) | Information processing device | |
CN108920210A (en) | A kind of method, system and the associated component of load store control software | |
US10592329B2 (en) | Method and electronic device for continuing executing procedure being aborted from physical address where error occurs |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |