Method and system for generating a reverse binary patch for undoing a software update
First Claim
1. A method for generating a reverse patch for reversing a forward patch on an electronic device, wherein the forward patch generates a new binary image from an old binary image, the method comprising the steps of:
- generating an index file at a server, the index file identifying regions of similarity between the old binary image and the new binary image for use in obtaining at least a portion of the old binary image from the new binary image;
transmitting the forward patch and the index file from the server to the electronic device;
applying the forward patch to the old binary image to create the new binary image at the electronic device; and
generating the reverse patch from the new binary image, the old binary image, and the index file at the electronic device;
wherein said steps of generating the index file, applying the forward patch, and generating the reverse patch are performed on a sector-by-sector basis.
4 Assignments
0 Petitions
Accused Products
Abstract
A reverse patch for undoing a forward patch for obtaining a new binary image from an old binary image is generated in two parts. First a reverse index file is generated when the forward patch is created at a host or server. The reverse index file identifies regions of similarity between the old binary image and the new binary image. The reverse index file is transmitted with the forward patch to an electronic device. Second, while applying the forward patch to obtain the new binary image from the old binary image, the electronic device generates the reverse patch based upon the new binary image, the old binary image, and the reverse index file. The forward patch and reverse patch may both be incremental patches. Incremental patches are generated and applied on a sector-by-sector basis.
-
Citations
34 Claims
-
1. A method for generating a reverse patch for reversing a forward patch on an electronic device, wherein the forward patch generates a new binary image from an old binary image, the method comprising the steps of:
-
generating an index file at a server, the index file identifying regions of similarity between the old binary image and the new binary image for use in obtaining at least a portion of the old binary image from the new binary image; transmitting the forward patch and the index file from the server to the electronic device; applying the forward patch to the old binary image to create the new binary image at the electronic device; and generating the reverse patch from the new binary image, the old binary image, and the index file at the electronic device;
wherein said steps of generating the index file, applying the forward patch, and generating the reverse patch are performed on a sector-by-sector basis. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method for generating a reverse index file for use in generating a reverse patch for reversing a forward patch on an electronic device, wherein the forward patch generates a new binary image from an old binary image, the method comprising the steps of:
-
generating an index file at a server, the index file identifying regions of similarity between the old binary image and the new binary image for use in obtaining at least a portion of the old binary image from the new binary image; and transmitting the forward patch and the index file from the server to the electronic device;
further including a step of generating the forward patch;
wherein said steps of generating the index file, applying the forward patch, and generating the reverse patch are performed on a sector-by-sector basis. - View Dependent Claims (10, 11, 12)
-
-
13. A method for generating a reverse patch for reversing a forward patch on an electronic device, wherein the forward patch generates a new binary image from an old binary image, the method comprising the steps of:
-
receiving the forward patch and an index file from a server, the index file identifying regions of similarity between the old binary image and the new binary image for use in obtaining at least a portion of the old binary image from the new binary image; applying the forward patch to the old binary image to create the new binary image at the electronic device; and generating the reverse patch from the new binary image, the old binary image, and the index file at the electronic device;
wherein said steps of generating the index file, applying the forward patch, and generating the reverse patch are performed on a sector-by-sector basis. - View Dependent Claims (14, 15, 16, 17)
-
-
18. A system for generating a reverse patch for reversing a forward patch, wherein the forward patch generates a new binary image from an old binary image, the system comprising:
-
a server having a processor and memory for storing the new binary image and the old binary image, and for storing the forward patch, and having a indexing module executable by the processor for generating an index file, the index file identifying regions of similarity between the old binary image and the new binary image for use in obtaining at least a portion of the old binary image from the new binary image, the server including a communications interface for transmitting the forward patch and the index file from the server to the electronic device; and an electronic device having a device processor and device memory for storing the forward patch and the index file received from the server via one or more communications networks, the electronic device including a patch manager for applying the forward patch to the old binary image to create the new binary image, and including a patch generation module for generating the reverse patch from the new binary image, the old binary image, and the index file;
wherein said indexing module is configured to generate said index file on a sector-by-sector basis, wherein said patch manager is configured to apply the forward patch on a sector-by-sector basis, and wherein said patch generation module is configured to generate the reverse patch on a sector-by-sector basis. - View Dependent Claims (19, 20, 21, 22, 23, 24)
-
-
25. A server for generating a reverse index file for use in generating a reverse patch for reversing a forward patch on an electronic device, wherein the forward patch generates a new binary image from an old binary image, the server comprising:
-
a processor; memory for storing the new binary image and the old binary image, and for storing the forward patch; a indexing module executable by the processor for generating an index file, the index file identifying regions of similarity between the old binary image and the new binary image for use in obtaining at least a portion of the old binary image from the new binary image; and a communications interface for transmitting the forward patch and the index file from the server to the electronic device;
further including a step of generating the forward patch;
wherein said steps of generating the index file, applying the forward patch, and generating the reverse patch are performed on a sector-by-sector basis. - View Dependent Claims (26, 27, 28)
-
-
29. An electronic device for generating a reverse patch for reversing a forward patch, wherein the forward patch generates a new binary image from an old binary image, the electronic device comprising:
-
a device processor; a communications subsystem for receiving the forward patch and the index file from a server via one or more communications networks; device memory for storing the forward patch and the index file; a patch manager for applying the forward patch to the old binary image to create the new binary image; a patch generation module for generating the reverse patch from the new binary image, the old binary image, and the index file;
wherein said patch manager is configured to operate on a sector-by-sector basis, and wherein said patch generation module is configured to operate on a sector-by-sector basis. - View Dependent Claims (30, 31, 32)
-
-
33. A computer program product comprising a computer readable medium having encoded thereon computer-executable instructions for configuring a processor to generate a reverse index file for use in generating a reverse patch for reversing a forward patch on an electronic device, wherein the forward patch generates a new binary image from an old binary image, the computer executable instructions comprising:
-
instructions for generating an index file at a server, the index file identifying regions of similarity between the old binary image and the new binary image for use in obtaining at least a portion of the old binary image from the new binary image; and instructions for transmitting the forward patch and the index file from the server to the electronic device;
further including a step of generating the forward patch;
wherein said steps of generating the index file, applying the forward patch, and generating the reverse patch are performed on a sector-by-sector basis.
-
-
34. A computer program product comprising a computer readable medium having encoded thereon computer-executable instructions for configuring a processor to generate a reverse patch for reversing a forward patch on an electronic device, wherein the forward patch generates a new binary image from an old binary image, the computer executable instructions comprising:
-
instructions for receiving the forward patch and an index file from a server, the index file identifying regions of similarity between the old binary image and the new binary image for use in obtaining at least a portion of the old binary image from the new binary image; instructions for applying the forward patch to the old binary image to create the new binary image at the electronic device; and instructions for generating the reverse patch from the new binary image, the old binary image, and the index file at the electronic device;
wherein said steps of generating the index file, applying the forward patch, and generating the reverse patch are performed on a sector-by-sector basis.
-
Specification