Method and apparatus for a boot progression scheme for reliably initializing a system
First Claim
1. A method performed by a system, the method comprising:
- loading a second boot image based on a current boot image identifying the second boot image, and updating the current boot image to identify a first boot image;
after said loading and updating operations, booting using the second boot image loaded during said loading operation; and
in response to identifying that a state of the system booted with the second boot image by said booting operation is not ok, loading and booting the system using the first boot image based on the current boot image identifying the first boot image.
1 Assignment
0 Petitions
Accused Products
Abstract
Methods and apparatus are disclosed for a boot progression scheme for reliably initializing a system. A boot progression data structure is maintained to indicate which of multiple boot images should be initially loaded upon startup of the system. During a boot phase, the boot progression data structure (e.g., a stack or other data structure) is modified to indicate a next boot image to use upon a next startup of the system. If the boot image provides a functional system, then the boot progression data structure is updated to once again indicate to boot with this image, and possibly removing references to other boot images. Otherwise, a reset or restart operation is performed to boot using another image. In this manner, a remote system can be upgraded across a network, and should the upgrade not perform correctly, the system reverts to a previous boot image.
79 Citations
10 Claims
-
1. A method performed by a system, the method comprising:
-
loading a second boot image based on a current boot image identifying the second boot image, and updating the current boot image to identify a first boot image; after said loading and updating operations, booting using the second boot image loaded during said loading operation; and in response to identifying that a state of the system booted with the second boot image by said booting operation is not ok, loading and booting the system using the first boot image based on the current boot image identifying the first boot image.
-
-
2. A computer-readable medium containing computer-executable instructions for performing operations, said operations comprising:
-
loading a second boot image based on a current boot image identifying the second boot image, and updating the current boot image to identify a first boot image; after said loading and updating operations, booting using the second boot image loaded during said loading operation; and in response to identifying that a state of the system booted with the second boot image by said booting operation is not ok, loading and booting the system using the first boot image based on the current boot image identifying the first boot image.
-
-
3. A method performed by a system, the method comprising:
-
loading a second boot image based on a boot order identified by a boot progression data structure, the boot progressing data structure including a plurality of indications, at least one of the plurality of indications identifying the second boot image and at least a second one of the plurality of indications identifying a first boot image, and updating the boot progression data structure to indicate a new boot order including to boot next using the first boot image; after said loading and updating operations, booting using the second boot image loaded during said loading operation; and in response to identifying that a state of the system booted with the second boot image by said booting operation is not ok, loading and booting the system using the first boot image based on the new boot order identifying to boot next using the first boot image. - View Dependent Claims (4)
-
-
5. A computer-readable medium containing computer-executable instructions for performing operations, said operations comprising:
-
loading a second boot image based on a boot order identified by a boot profession data structure, the boot progressing data structure including a plurality of indications, at least one of the plurality of indications identifying the second boot image and at least a second one of the plurality of indications identifying a first boot image, and updating the boot progression data structure to indicate a new boot order including to boot next using the first boot image; after said loading and updating operations, booting using the second boot image loaded during said loading operation; and in response to identifying that a state of the system booted with the second boot image by said booting operation is not ok, loading and booting the system using the first boot image based on the new boot order identifying to boot next using the first boot image.
-
-
6. An apparatus comprising:
-
means for loading a second boot image based on a boot order identified by a boot progression data structure, the boot progression data structure including a plurality of indications, at least one of the plurality of indications identifying the second boot image and at least a second one of the plurality of indications identifying a first boot image; means for updating the boot order identified by the boot progression data structure; and means for booting using the second boot image; wherein said means for updating the boot order includes means for determining whether to load and boot next time with the second boot image or whether to load and boot next time with the next boot image specified by the boot order based on a value of a boot times indicator identifying a number of times to load and boot using the second boot image;
wherein the first and second boot images are operable images.
-
-
7. A system comprising:
-
a boot progression data structure indicating an ordering of a plurality of boot images, wherein the boot progression data structure includes a plurality of indications of boot images; and a loader responsive to the boot progression data structure;
wherein the loader loads a first boot image identified by the ordering of the plurality of boot images and updates the boot progression data structure to identify a next boot image in the ordering of the plurality of boot images, and then boots the system with said loaded first boot image. - View Dependent Claims (8, 9)
-
-
10. An apparatus comprising:
-
means for loading a second boot image based on a current boot image identifying the second boot image, and updating the current boot image to identify a first boot image; means for booting, after said loading and updating operations, using the second boot image loaded during said loading operation; and means for, in response to identifying that a state of the system booted with the second boot image by said booting operation is not ok, loading and booting the system using the first boot image based on the current boot image identifying the first boot image.
-
Specification