Claims Analysis
Total Claims: 32
Claim 1
Independent Claim
104 words
A method for recording a plurality of data about a plurality of blocks of data stored in a storage system, comprising the step of maintaining multiple usage bits for each of said plurality of blocks; wherein one bit of said multiple usage bits for each of said plurality of blocks indicates a block's membership in an active file system and plural bits of said multiple usage bits for each of said plurality of blocks indicate membership in plural read-only copies of a file system; and wherein said multiple usage bits for each of said plurality of blocks are maintained in said active file system.
Claim 2
Independent Claim
104 words
A method for recording a plurality of data about a plurality of blocks of data stored in a storage system, comprising the step of maintaining multiple usage bits for each of said plurality of blocks; wherein one bit of said multiple usage bits for each of said plurality of blocks indicates a block's membership in an active file system and plural bits of said multiple usage bits for each of said plurality of blocks indicate membership in plural read-only copies of a file system; and wherein said multiple usage bits for each of said plurality of blocks are maintained in said active file system.
Claim 3
Dependent Claim
28 words
A method as in claim 1 , wherein one or more bits of said multiple usage bits for each of said plurality of blocks further indicate block reusability.
Claim 4
Independent Claim
186 words
A method for generating a consistency point for a storage system, comprising the steps of: marking a plurality of inodes pointing to a plurality of modified blocks in a file system stored on said storage system as being in a consistency point; flushing regular files to said storage system; flushing special files to said storage system; flushing at least one block of file system information to said storage system; and queuing dirty inodes after said step of marking and before said step of flushing at least one block of file system information; wherein said step of flushing said special files to said storage system further comprises the steps of: pre-flushing an inode for a blockmap file to an inode file; allocating space on said storage system for all dirty blocks in said inode and said blockmap files; flushing said inode for said blockmap file again updating a plurality of entries in said blockmap file wherein each entry of said plurality of entries represents a block in said storage system; and writing all dirty blocks in said blockmap file and said inode file to said storage system.
Claim 5
Independent Claim
186 words
A method for generating a consistency point for a storage system, comprising the steps of: marking a plurality of inodes pointing to a plurality of modified blocks in a file system stored on said storage system as being in a consistency point; flushing regular files to said storage system; flushing special files to said storage system; flushing at least one block of file system information to said storage system; and queuing dirty inodes after said step of marking and before said step of flushing at least one block of file system information; wherein said step of flushing said special files to said storage system further comprises the steps of: pre-flushing an inode for a blockmap file to an inode file; allocating space on said storage system for all dirty blocks in said inode and said blockmap files; flushing said inode for said blockmap file again updating a plurality of entries in said blockmap file wherein each entry of said plurality of entries represents a block in said storage system; and writing all dirty blocks in said blockmap file and said inode file to said storage system.
Claim 6
Independent Claim
122 words
A method of maintaining data in a storage system, comprising the steps of: maintaining a root inode and inodes for a file system in the storage system, the root inode pointing directly or indirectly to the inodes, and each inode storing file data, pointing to one or more blocks in the storage system that store file data, or pointing to other inodes, with different levels of indirection possible for the inodes to point to the blocks; and maintaining an inode map and a block map for the file; wherein when said inodes are maintained in the storage system, each inode only points to blocks in the storage system having a same level of indirection as other blocks pointed to by that inode.
Claim 7
Independent Claim
122 words
A method of maintaining data in a storage system, comprising the steps of: maintaining a root inode and inodes for a file system in the storage system, the root inode pointing directly or indirectly to the inodes, and each inode storing file data, pointing to one or more blocks in the storage system that store file data, or pointing to other inodes, with different levels of indirection possible for the inodes to point to the blocks; and maintaining an inode map and a block map for the file; wherein when said inodes are maintained in the storage system, each inode only points to blocks in the storage system having a same level of indirection as other blocks pointed to by that inode.
Claim 8
Dependent Claim
24 words
A method as in claim 4 , further comprising the step of creating a snapshot of the file system by copying the root inode.
Claim 9
Dependent Claim
20 words
A method as in claim 5 , wherein the block map indicates membership of blocks in one or more snapshots.
Claim 10
Dependent Claim
37 words
A method as in claim 5 , further comprising the step of deleting a snapshot from the storage system, wherein blocks that are only part of the deleted snapshot are released for re-use by the storage system.
Claim 11
Dependent Claim
116 words
A memory storing information including instructions, the instructions executable by a processor to record a plurality of data about a plurality of blocks of data stored in a storage system, the instructions comprising the step of maintaining multiple usage bits for each of said plurality of blocks; wherein one bit of said multiple usage bits for each of said plurality of blocks indicates a block's membership in an active file system and plural bits of said multiple usage bits for each of said plurality of blocks indicate membership in plural read-only copies of a file system; and wherein said multiple usage bits for each of said plurality of blocks are maintained in said active file system.
Claim 12
Dependent Claim
116 words
A memory storing information including instructions, the instructions executable by a processor to record a plurality of data about a plurality of blocks of data stored in a storage system, the instructions comprising the step of maintaining multiple usage bits for each of said plurality of blocks; wherein one bit of said multiple usage bits for each of said plurality of blocks indicates a block's membership in an active file system and plural bits of said multiple usage bits for each of said plurality of blocks indicate membership in plural read-only copies of a file system; and wherein said multiple usage bits for each of said plurality of blocks are maintained in said active file system.
Claim 13
Dependent Claim
28 words
A memory as in claim 8 , wherein one or more bits of said multiple usage bits for each of said plurality of blocks further indicate block reusability.
Claim 14
Dependent Claim
198 words
A memory storing information including instructions, the instructions executable by a processor to generate a consistency point for a storage system, the instructions comprising the steps of: marking a plurality of inodes pointing to a plurality of modified blocks in a file system stored on said storage system as being in a consistency point; flushing regular files to said storage system; flushing special files to said storage system; flushing at least one block of file system information to said storage system; sand queuing dirty inodes after said step of marking and before said step of flushing at least one block of file system information; wherein said step of flushing said special files to said storage system further comprises the steps of: pre-flushing, an inode for a blockmap file to an inode file; allocating space on said storage system for all dirty blocks in said mode and said blockmap files; flushing said inode for said blockmap file again; updating a plurality of entries in said blockmap file wherein each entry of said plurality of entries represents a block in said storage system; and writing all dirty blocks in said blockmap file and said inode file to said storage system.
Claim 15
Dependent Claim
198 words
A memory storing information including instructions, the instructions executable by a processor to generate a consistency point for a storage system, the instructions comprising the steps of: marking a plurality of inodes pointing to a plurality of modified blocks in a file system stored on said storage system as being in a consistency point; flushing regular files to said storage system; flushing special files to said storage system; flushing at least one block of file system information to said storage system; sand queuing dirty inodes after said step of marking and before said step of flushing at least one block of file system information; wherein said step of flushing said special files to said storage system further comprises the steps of: pre-flushing, an inode for a blockmap file to an inode file; allocating space on said storage system for all dirty blocks in said mode and said blockmap files; flushing said inode for said blockmap file again; updating a plurality of entries in said blockmap file wherein each entry of said plurality of entries represents a block in said storage system; and writing all dirty blocks in said blockmap file and said inode file to said storage system.
Claim 16
Dependent Claim
136 words
A memory storing information including instructions, the instructions executable by a processor to maintain data in a storage system, the instructions comprising the steps of: maintaining a root inode mode and inodes for a file system in the storage system, the root inode pointing directly or indirectly to the inodes, and each inode storing file data, pointing to one or more blocks in the storage system that store file data, or pointing to other inodes, with different levels of indirection possible for the anodes to point to the blocks; and maintaining an inode map and a block map for the file system; wherein when said inodes are maintained in the storage system, each inode only points to blocks in the storage system having a same level of indirection as other blocks pointed to by that inode.
Claim 17
Dependent Claim
136 words
A memory storing information including instructions, the instructions executable by a processor to maintain data in a storage system, the instructions comprising the steps of: maintaining a root inode mode and inodes for a file system in the storage system, the root inode pointing directly or indirectly to the inodes, and each inode storing file data, pointing to one or more blocks in the storage system that store file data, or pointing to other inodes, with different levels of indirection possible for the anodes to point to the blocks; and maintaining an inode map and a block map for the file system; wherein when said inodes are maintained in the storage system, each inode only points to blocks in the storage system having a same level of indirection as other blocks pointed to by that inode.
Claim 18
Dependent Claim
27 words
A memory as in claim 11 , wherein the instructions further comprise the step of creating a snapshot or the file system by copying the root inode.
Claim 19
Dependent Claim
20 words
A memory as in claim 12 , wherein the block map indicates membership of blocks in one or more snapshots.
Claim 20
Dependent Claim
40 words
A memory as in claim 12 , wherein the instructions further comprise the step of deleting a snapshot from the storage system, wherein blocks that are only part of the deleted snapshot are released for re-use by the storage system.
Claim 21
Independent Claim
124 words
A system comprising: a processor; a storage system; and a memory storing information including instructions, the instructions executable by the processor to record a plurality of data about a plurality of blocks of data stored in the storage system, the instructions comprising step of maintaining multiple usage bits for each of said plurality of blocks; wherein one bit of said multiple usage bits for each of said plurality of blocks indicates a block's membership in an active file system and plural bits of said multiple usage bits for each of said plurality of blocks indicate membership in plural read-only copies of a file system; and wherein said multiple usage bits for each of said plurality of blocks are maintained in said active file system.
Claim 22
Independent Claim
124 words
A system comprising: a processor; a storage system; and a memory storing information including instructions, the instructions executable by the processor to record a plurality of data about a plurality of blocks of data stored in the storage system, the instructions comprising step of maintaining multiple usage bits for each of said plurality of blocks; wherein one bit of said multiple usage bits for each of said plurality of blocks indicates a block's membership in an active file system and plural bits of said multiple usage bits for each of said plurality of blocks indicate membership in plural read-only copies of a file system; and wherein said multiple usage bits for each of said plurality of blocks are maintained in said active file system.
Claim 23
Dependent Claim
28 words
A system as in claim 15 , wherein one or more bits of said multiple usage bits for each of said plurality of blocks further indicate block reusability.
Claim 24
Independent Claim
218 words
A system comprising: a processor; a storage system; and a memory storing information including instruction, the instructions executable by the processor to generate a consistency point for the storage system, the instructions comprising the steps of: (a) marking a plurality of inodes pointing to a plurality of modified blocks in a file system stored on said storage system as being in a consistency point; (b) flushing regular files to said storage system; (c) flushing special files to said storage system; (d) flushing at least one block of file system information to said storage system; and (e) queuing dirty inodes after said step of marking and before said step of flushing at last one block of file system information; and wherein said step of flushing said special files to said storage system further comprises the steps of: (f) pre-flushing an inode for a blockmap file to an inode file; (g) allocating space on said storage system for all dirty blocks in said inode and said blockmap files; (h) flushing said inode for said blockmap file again; (i) updating a plurality of entries in said blockmap file wherein each entry of said plurality of entries represents a block in said storage system; and (j) writing all dirty blocks in said blockmap file and said inode file to said storage system.
Claim 25
Independent Claim
218 words
A system comprising: a processor; a storage system; and a memory storing information including instruction, the instructions executable by the processor to generate a consistency point for the storage system, the instructions comprising the steps of: (a) marking a plurality of inodes pointing to a plurality of modified blocks in a file system stored on said storage system as being in a consistency point; (b) flushing regular files to said storage system; (c) flushing special files to said storage system; (d) flushing at least one block of file system information to said storage system; and (e) queuing dirty inodes after said step of marking and before said step of flushing at last one block of file system information; and wherein said step of flushing said special files to said storage system further comprises the steps of: (f) pre-flushing an inode for a blockmap file to an inode file; (g) allocating space on said storage system for all dirty blocks in said inode and said blockmap files; (h) flushing said inode for said blockmap file again; (i) updating a plurality of entries in said blockmap file wherein each entry of said plurality of entries represents a block in said storage system; and (j) writing all dirty blocks in said blockmap file and said inode file to said storage system.
Claim 26
Independent Claim
146 words
A system comprising: a processor; a storage system; and a memory storing information including instructions, the instructions executable by the processor to maintain data in the storage system, the instructions comprising the steps of: (a) maintaining a root inode and inodes for a file system in the storage system, the root inode pointing directly or indirectly to the inodes, and each inode storing file data, pointing to one or more blocks in the storage system that store file data, or pointing to other inodes, with different levels of indirection possible for the inodes to point to the blocks; and (b) maintaining an inode map and a block map for the file system; wherein when said inodes are maintained in the storage system, each inode only points to blocks in the storage system having a same level of indirection as other blocks pointed to by that inode.
Claim 27
Independent Claim
146 words
A system comprising: a processor; a storage system; and a memory storing information including instructions, the instructions executable by the processor to maintain data in the storage system, the instructions comprising the steps of: (a) maintaining a root inode and inodes for a file system in the storage system, the root inode pointing directly or indirectly to the inodes, and each inode storing file data, pointing to one or more blocks in the storage system that store file data, or pointing to other inodes, with different levels of indirection possible for the inodes to point to the blocks; and (b) maintaining an inode map and a block map for the file system; wherein when said inodes are maintained in the storage system, each inode only points to blocks in the storage system having a same level of indirection as other blocks pointed to by that inode.
Claim 28
Dependent Claim
27 words
A system as in claim 18 , wherein the instructions further comprise the step of creating a snapshot of the file system by copying the root inode.
Claim 29
Dependent Claim
20 words
A system as in claim 19 , wherein the block map indicates membership of blocks in one or more snapshots.
Claim 30
Dependent Claim
40 words
A system as in claim 19 , wherein the instructions further comprise the step of deleting a snapshot from the storage system, wherein blocks that are only part of the deleted snapshot are released for re-use by the storage system.
Claim 31
Independent Claim
101 words
A system for maintaining data in storage means, comprising: means for maintaining a root inode and inodes for a file system in the storage systems, the root inode pointing to inodes, and each inode storing file data, pointing to one or more blocks in the storage means that store file data, or pointing to other inodes; and means for maintaining an inode map and a block map for the file system; wherein when said inodes are maintained in the storage system, each inode only points to blocks having a same level of indirection as other blocks pointed to by that inode.
Claim 32
Independent Claim
101 words
A system for maintaining data in storage means, comprising: means for maintaining a root inode and inodes for a file system in the storage systems, the root inode pointing to inodes, and each inode storing file data, pointing to one or more blocks in the storage means that store file data, or pointing to other inodes; and means for maintaining an inode map and a block map for the file system; wherein when said inodes are maintained in the storage system, each inode only points to blocks having a same level of indirection as other blocks pointed to by that inode.