Systems and methods for incrementally updating an image in flash memory
First Claim
Patent Images
1. A method, comprising:
- creating a differences file from a first image and a second image, the second image including data sections from the first image and new data sections, the differences file including pointers to the data sections of the first image that are included in the second image and the new data sections from the second image;
identifying dependent data sections that require data from one or more referenced data sections; and
reordering the data sections and pointers so that no dependent data section requires data from a referenced data section that precedes it in the order.
2 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods for incrementally updating a first image in flash memory of a device by downloading a differences file that identifies differences between the first image and a second image and applying the differences file to the first image to create the second image in the flash memory. The updating is performed incrementally by writing portions of the second image to the flash memory, each portion being of a standard block size acceptable for writing to the flash memory.
-
Citations
29 Claims
-
1. A method, comprising:
-
creating a differences file from a first image and a second image, the second image including data sections from the first image and new data sections, the differences file including pointers to the data sections of the first image that are included in the second image and the new data sections from the second image;
identifying dependent data sections that require data from one or more referenced data sections; and
reordering the data sections and pointers so that no dependent data section requires data from a referenced data section that precedes it in the order. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method for overwriting an old image in flash memory with a new image, the new image containing data sections from the old image and new data sections, the method comprising:
-
accessing a differences file that contains references to data sections from the old image that are included in the new image, and the new data sections from the new image;
identifying dependent data sections as being data sections that require data from one or more referenced data sections;
ordering the references to data sections from the old image and the new data sections so that a dependent data section precedes the one or more referenced data sections from which it requires data; and
writing the new image in flash memory according to the ordering, the new data sections being copied from the differences file and the referenced data sections being copied from the old image. - View Dependent Claims (11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22, 23, 24, 25, 26, 28)
-
-
17. A computer readable medium containing computer-executable instructions that, when executed by a computer, perform the following:
-
accessing a differences file that contains references to data sections from a first image that are included in a second image, and new data sections that are included in the second image;
identifying dependent data sections that require data from one or more referenced data sections in the first image; and
reordering the references to data sections from the first image and the new data sections so that each dependent data section precedes the one or more referenced data sections from which it requires data.
-
-
27. A system, comprising:
-
a processor;
memory;
an image stored in the memory and containing data sections;
an updated image stored in the memory, containing one or more data sections from the image and new data sections;
a compression module configured to create a differences file, the differences file including the new data sections of the updated image and references to the data sections in the image that are also contained in the updated image; and
an ordering module configured to reorder the references and new data sections in the differences file and store the reordered references and new data sections in a modified differences file so that any data section requiring data from one or more referenced data sections comes before the one or more referenced data sections.
-
-
29. An incremental dial-up bootloader, comprising:
-
a dial-up bootloader operating system, configure to download a differences file;
an incremental module configured to apply the differences file to a first image to produce a second image that is an updated version of the first image; and
a flash manager to create the second image incrementally until a portion of the second image is of a standard size to write to the flash memory and to write portions of the second image to the flash memory until the second image is stored in the flash memory.
-
Specification