System and method for updating and distributing information
First Claim
1. A system for updating a plurality of distributed electronic devices with an updated operating code comprising a first plurality of digital information sequences wherein each of the plurality of electronic devices include a resident operating code comprising a second plurality of digital information sequences that are stored within the electronic device, the system comprising:
- an update generator that compares an image of the first plurality of digital information sequences comprising the updated operating code to an image of the second plurality of digital information sequences comprising the resident operating code and identifies differences between of the updated operating code and the resident operating code and thereafter generates an update package comprising an instruction set which specifies how to generate the updated operating code utilizing at least a portion of the second plurality of digital information sequences of the resident operating code;
a distribution system that distributes the update package to the electronic devices such that the update package is received by the electronic devices and stored therein; and
a plurality of client modules that are respectively resident on each of the plurality of electronic devices, wherein the plurality of client modules access the distribution system and receive the update package and wherein the instruction set of the update package is executed by the client modules so as to generate the updated operating code by utilizing a least a portion of the second plurality of digital information sequences from the resident operating code.
2 Assignments
0 Petitions
Accused Products
Abstract
The present invention discloses efficient devices, systems, and methods for updating digital information sequences that are comprised by software (110a), devices (104a), and data (110c). In addition, these digital information sequences may be stored and used in various forms, including but not limited to files, memory locations, and/or embedded storage locations. The disclosed invention is thus suitable for updating many types of digital information sequences and in the context of updating software comprised of multiple files. Furthermore, the devices, systems, and methods described herein provide a developer skilled in the art with an improved ability to generate update information as needed and, additionally, allow users to proceed through a simplified update path, which is not error-prone, and may be performed more quickly than through the use of existing technologies.
-
Citations
122 Claims
-
1. A system for updating a plurality of distributed electronic devices with an updated operating code comprising a first plurality of digital information sequences wherein each of the plurality of electronic devices include a resident operating code comprising a second plurality of digital information sequences that are stored within the electronic device, the system comprising:
-
an update generator that compares an image of the first plurality of digital information sequences comprising the updated operating code to an image of the second plurality of digital information sequences comprising the resident operating code and identifies differences between of the updated operating code and the resident operating code and thereafter generates an update package comprising an instruction set which specifies how to generate the updated operating code utilizing at least a portion of the second plurality of digital information sequences of the resident operating code;
a distribution system that distributes the update package to the electronic devices such that the update package is received by the electronic devices and stored therein; and
a plurality of client modules that are respectively resident on each of the plurality of electronic devices, wherein the plurality of client modules access the distribution system and receive the update package and wherein the instruction set of the update package is executed by the client modules so as to generate the updated operating code by utilizing a least a portion of the second plurality of digital information sequences from the resident operating code. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 68)
-
-
20. A system for updating an electronic device containing a first plurality of data sequences comprising a first code version to a second code version comprising a second plurality of data sequences using a update package comprising a plurality of transformation instructions which transform the first code version into the second code version, the system comprising:
-
an update generator that performs a version comparison between the first code version and the second code version to identify pattern differences between the first plurality of data sequences and the second plurality of data sequences, wherein the identified pattern differences are encoded using the transformation instructions which identify portions of the first plurality of data sequences that can be used in the construction of the identified pattern differences, and thereafter forming the update package using the transformation instructions;
a distribution system that receives the update package from the update generator and distributes the update package to the electronic device; and
an update agent resident on the electronic device that executes the transformation instructions of the update package thereby transforming the first code version resident in the electronic device into the updated second code version. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27)
-
-
28. A system for updating a plurality of distributed electronic devices with an updated operating code that comprises a plurality of data blocks wherein each of the plurality of distributed electronic devices include a resident operating code that is stored as plurality of data blocks, the system comprising:
-
an update generator that compares the plurality of data blocks of the resident operating code with the plurality of data blocks of the updated operating code and thereby generates an update package comprising an instruction set which indicates how to generate the updated operating code utilizing at least in part the plurality of data blocks of the resident operating code;
a distribution system that includes the update package and is accessible by each of the plurality of distributed electronic devices; and
a plurality of client modules that are respectively resident on each of the plurality of distributed electronic set, wherein the plurality of client modules accesses the distribution system so as to be able to receive the update package, wherein the instruction set provides instructions to the client modules such that the client modules generates at least a portion of the plurality of data blocks comprising the updating operating code by utilizing the plurality of data blocks comprising the resident operating code. - View Dependent Claims (29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48)
-
-
49. A system for updating a plurality of distributed electronic devices with an updated operating code that comprises a plurality of data blocks wherein each of the plurality of distributed electronic devices include a resident operating code that is stored as plurality of data blocks, the system comprising:
-
an update generator that compares the plurality of data blocks of the resident operating code with the plurality of data blocks of the updated operating code and thereby identifies update data blocks that are different between the update operating code and the resident operating code wherein the update generator generates an update package comprising an instruction set which indicates how to transform the resident operating code into the updated operating code and how to generate the update data blocks utilizing at least in part the plurality of data blocks of the resident operating code;
a distribution system that includes the update package and is accessible by each of the plurality of distributed electronic devices; and
a plurality of client modules that are respectively resident on each of the plurality of distributed electronic set, wherein the plurality of client modules accesses the distribution system so as to be able to receive the update package, wherein the instruction set provides instructions to the client modules such that the client modules modifies the resident operating code into the updated operating code and wherein the client modules generates at least a portion of the update data blocks by utilizing the received instruction set to perform operations on the data blocks of the resident operating code to generate the update data blocks. - View Dependent Claims (50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67)
-
-
69. A method of updating a resident operating code stored in a first storage section of an electronic device into an updated operating code, the method comprising:
-
(i) developing an update package comprising a plurality of transformation operations to transform the resident operating code into the updated operating code;
(ii) transferring the update package to the electrical device;
(iii) copying a portion of the resident operating code into a second storage section;
(iv) updating the portion of the resident operating code stored in the second storage section using the transformation operations of the update package to transform the resident operating code into updated operating code;
(v) replacing the portion of resident operating code stored in the first storage section with the portion of updated operating code stored in the second storage section; and
(vi) repeating acts (iii) through (v) until the resident operating code has been fully updated to the updated operating code. - View Dependent Claims (70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94)
-
-
95. An updatable electronic device comprising:
-
a non-volatile storage section having operating code stored therein;
a volatile storage section that is adapted to receive an update package comprising a plurality of instructions via a communications medium; and
a controller that implements the instructions of the update package to update the operating code stored in the non-volatile storage section wherein the controller is configured to sequentially (i) retrieve original portions of operating code from the non-volatile storage section into the volatile storage section and (ii) apply the instructions of the update package to the retrieved portions in the volatile storage section to thereby transform the retrieved original operating code portion into an updated operating code portion and then (iii) replace the original operating code portion with the updated operating code portion - View Dependent Claims (96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122)
-
Specification