Updating electronic files using byte-level file differencing and updating algorithms
First Claim
1. A system for updating electronic files, comprising:
- two or more differencing systems, wherein each differencing system includes a first component of a byte-level file differencing and updating system that generates difference flies using an operation array to code byte-level differences between original files and updated files;
at least one server of a communication service provider coupled among the differencing systems and two or more portable communication devices, wherein the server,receives the difference files and generates messages to each of the portable communication devices hosting original files corresponding to the difference file, wherein the messages inform users of available updates to hosted files,receives requests for the updates from users and, in response, provides the difference file to the requesting portable communication devices; and
wherein each of the portable communication devices includes a second component of the byte-level file differencing and updating system and is configured to,receive at least one block of the difference file and store the difference file block in a first memory area;
write a copy of at least one block of the original file from an original memory area to a second memory area, wherein the original file block corresponds to the difference file block;
generate a copy of at least one block of the new file using the stored difference file block and the copy of the original file block, wherein the new file block corresponds to the original file block;
write the generated copy of the new file block to a third memory area; and
update the original file block by writing the copy of the new file block over the corresponding original file block in the original memory area.
4 Assignments
0 Petitions
Accused Products
Abstract
A system and method for updating electronic files and file components are provided. An upgrade client of a remote device receives a delta file block that codes differences between an original and a new version of a file. The upgrade client stores the delta file block in a first memory area. The upgrade client writes an original file block corresponding to the delta file block from an original memory area to a second memory area. A file updating algorithm generates an updated file block in the host device using the received delta file block and the original file block. This updated file block corresponds to the original file block, and is stored in a third memory area. The upgrade client updates the original file block of the remote device by writing the updated file block over the original file block in the original memory area of the remote device.
103 Citations
1 Claim
-
1. A system for updating electronic files, comprising:
-
two or more differencing systems, wherein each differencing system includes a first component of a byte-level file differencing and updating system that generates difference flies using an operation array to code byte-level differences between original files and updated files; at least one server of a communication service provider coupled among the differencing systems and two or more portable communication devices, wherein the server, receives the difference files and generates messages to each of the portable communication devices hosting original files corresponding to the difference file, wherein the messages inform users of available updates to hosted files, receives requests for the updates from users and, in response, provides the difference file to the requesting portable communication devices; and wherein each of the portable communication devices includes a second component of the byte-level file differencing and updating system and is configured to, receive at least one block of the difference file and store the difference file block in a first memory area; write a copy of at least one block of the original file from an original memory area to a second memory area, wherein the original file block corresponds to the difference file block; generate a copy of at least one block of the new file using the stored difference file block and the copy of the original file block, wherein the new file block corresponds to the original file block; write the generated copy of the new file block to a third memory area; and update the original file block by writing the copy of the new file block over the corresponding original file block in the original memory area.
-
Specification