Systems and methods for modifying a set of data objects
First Claim
1. A method, comprising:
- providing a first set of data objects comprising one or more first data blocks;
providing at least one modification data block, wherein the at least one modification data block comprises a new data block not present in the first set of data objects or a modified version of a data block in the first set of data objects; and
providing at least one file offset for the at least one modification data block, wherein the file offset references a position in a maintained set of data blocks to place the at least one modification data block,wherein the maintained set of data blocks and the at least one file offset is used to provide a current set of data objects;
wherein if the maintained set of data blocks includes at least one free data block, at least one file offset is a position in the maintained set of data blocks to overwrite at least one free data block with the at least one modification data block.
1 Assignment
0 Petitions
Accused Products
Abstract
A system and method for generating and updating a file system on a client computer. An original file system may be compared to an updated file system and the differences between the two file systems may be defined in specific data blocks. The differences may include new data blocks, modified data blocks, and data blocks that have been deleted. The new data blocks or modified data blocks may be sent to the client computer along with reference file updates to update the file system on the client computer. A virtual file system on the client computer may be created using the set of data blocks and the reference files to point to which data blocks contain the data for specific files. As the file system is updated, new data blocks and modified data blocks may replace deleted data blocks in the set of data blocks.
100 Citations
64 Claims
-
1. A method, comprising:
-
providing a first set of data objects comprising one or more first data blocks; providing at least one modification data block, wherein the at least one modification data block comprises a new data block not present in the first set of data objects or a modified version of a data block in the first set of data objects; and providing at least one file offset for the at least one modification data block, wherein the file offset references a position in a maintained set of data blocks to place the at least one modification data block, wherein the maintained set of data blocks and the at least one file offset is used to provide a current set of data objects; wherein if the maintained set of data blocks includes at least one free data block, at least one file offset is a position in the maintained set of data blocks to overwrite at least one free data block with the at least one modification data block. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A method, comprising:
-
providing at least one modification data block, wherein the at least one modification data block comprises a data block included in a current set of data objects but not included in a first set of data objects or a data block in the current set of data objects that is a modified version of a data block from the first set of data objects; updating a maintained set of data blocks with the at least one modification data block; maintaining a directory map file comprising a listing of directories in the current set of data objects and a listing of files in the directories; and updating the directory map file with a new filename of a filename not in the first set of data objects but in the current set of data objects or removing a deleted filename of a filename in the first set of data objects but not in the current set of data objects. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20)
-
-
21. A method, comprising:
-
providing at least one modification data block, wherein the at least one modification data block comprises a data block included in a current set of data objects but not included in a first set of data objects or a data block in the current set of data objects that is a modified version of a data block from the first set of data objects; updating a maintained set of data blocks with the at least one modification data block; providing a first lookup table file and a second lookup table file;
wherein the first lookup table file and the second lookup table file comprise a position of data blocks in the maintained set of data blocks and a corresponding position for the data blocks in the current set of data objects;providing a first lookup table entry for the at least one modification data block, wherein the first lookup table entry comprises a position of the at least one modification data block in the maintained set of data blocks and a position of the at least one modification data block in the current set of data objects; and updating the first lookup table file with the first lookup table entry, wherein at least part of said updating is performed substantially simultaneously with the second lookup table being used to reference the maintained set of data blocks. - View Dependent Claims (22)
-
-
23. A computer readable storage medium comprising program instructions, wherein the program instructions are computer-executable to:
-
provide a first set of data objects comprising one or more first data blocks; provide at least one modification data block, wherein the at least one modification data block comprises a new data block not present in the first set of data objects or a modified version of a data block in the first set of data objects; and provide at least one file offset for the at least one modification data block, wherein the at least one file offset references a position in a maintained set of data blocks to place the at least one modification data block, wherein the maintained set of data blocks and the at least one file offset is used to provide a current set of data objects; wherein if the maintained set of data blocks includes at least one free data block, at least one file offset is a position in the maintained set of data blocks to overwrite at least one free data block with the at least one modification data block. - View Dependent Claims (24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34)
-
-
35. A computer readable storage medium comprising program instructions, wherein the program instructions are computer-executable to:
-
provide at least one modification data block, wherein the at least one modification data block comprises a data block included in a current set of data objects but not included in a first set of data objects or a data block in the current set of data objects that is a modified version of a data block from the first set of data objects; update a maintained set of data blocks with the at least one modification data block; maintain a directory map file comprising a listing of directories in the current set of data objects and a listing of files in the directories; and update the directory map file with a new filename of a filename not in the first set of data objects but in the current set of data objects or removing a deleted filename of a filename in the first set of data objects but not in the current set of data objects. - View Dependent Claims (36, 37, 38, 39, 40, 41, 42, 43)
-
-
44. A system comprising:
-
a CPU in communication with a network; a memory coupled to the CPU, wherein the memory comprises program instructions executable to; provide a first set of data objects comprising one or more first data blocks; provide at least one modification data block, wherein the at least one modification data block comprises a new data block not present in the first set of data objects or a modified version of a data block in the first set of data objects; and provide at least one file offset for the at least one modification data block, wherein the file offset references a position in a maintained set of data blocks to place the at least one modification data block, wherein the maintained set of data blocks and the at least one file offset is used to provide a current set of data objects; wherein if the maintained set of data blocks includes at least one free data block, at least one file offset is a position in the maintained set of data blocks to overwrite at least one free data block with the at least one modification data block. - View Dependent Claims (45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55)
-
-
56. A system comprising:
-
a CPU in communication with a network; a memory coupled to the CPU, wherein the memory comprises program instructions executable to; provide at least one modification data block, wherein the at least one modification data block comprises a data block included in a current set of data objects but not included in a first set of data objects or a data block in the current set of data objects that is a modified version of a data block from the first set of data objects; update a maintained set of data blocks with the at least one modification data block; maintain a directory map file comprising a listing of directories in the current set of data objects and a listing of files in the directories; and update the directory map file with a new filename of a filename not in the first set of data objects but in the current set of data objects or removing a deleted filename of a filename in the first set of data objects but not in the current set of data objects. - View Dependent Claims (57, 58, 59, 60, 61, 62, 63, 64)
-
Specification