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; and
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.
160 Citations
145 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; and
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:
-
determining a size of a maintained set of data blocks;
if the size of the maintained set of data blocks plus the size of at least one modification data block exceeds a pre-determined size limit, and if a maintained set of data blocks includes a free data block, assigning a file offset to at least one modification data block such that at least one modification data block overwrites the free data block in the maintained set of data blocks.
-
-
14-24. -24. (canceled)
-
25. 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; and
updating a maintained set of data blocks with the at least one modification data block. - View Dependent Claims (26, 27, 28, 29, 30, 31, 32, 33, 34, 35)
-
-
36-55. -55. (canceled)
-
56. A carrier medium comprising program instructions, wherein the program instructions are computer-executable to implement 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; and
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 (57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67)
-
-
68-79. -79. (canceled)
-
80. A carrier medium comprising program instructions, wherein the program instructions are computer-executable to implement a carrier medium 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; and
updating a maintained set of data blocks with the at least one modification data block. - View Dependent Claims (81, 82, 83, 84, 85, 86, 87, 88, 89, 90)
-
-
91-110. -110. (canceled)
-
111. 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; and
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 (112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122)
-
-
123-134. -134. (cancelled)
-
135. 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; and
update a maintained set of data blocks with the at least one modification data block. - View Dependent Claims (136, 137, 138, 139, 140, 141, 142, 143, 144, 145)
-
Specification