File system having inverted hierarchical structure
First Claim
1. A computer system comprising:
- an electronic storage medium;
a persistent electronic data storage device;
file system software stored on the electronic storage medium and executable by a processor to organize files and directories stored on the persistent electronic data storage device;
a metafile stored on an electronic storage medium and accessible by the processor, the metafile comprising a plurality of electronic records that correspond to files on the persistent electronic data storage device and to directory containers for the files;
where individual records of the plurality of records are accessed using a respective file identifier, where each individual child file and child directory record, which corresponds to a respective child file or a respective child directory, includes a parent identifier that identifies a respective parent directory record in the metafile, the respective parent directory record corresponding to a respective parent of the respective child file or the respective child directory, where the files and directories of the file system are organized in an inverted hierarchy in which the parent identifier included in the respective child file or respective child directory record defines a starting point for the inverted hierarchy associated with the respective child file record or the respective child directory record that ultimately terminates at the root directory of the file system, and where file and directory transactions for each child file and child directory are committed atomically as a change, addition, or deletion of only the respective child file record or the respective child directory record without a corresponding modification of the respective parent directory record, where the file and directory transactions include at least one of a file deletion, a file copy, and a file creation.
12 Assignments
0 Petitions
Accused Products
Abstract
A computer system that improves upon the traditional file system hierarchy is disclosed. The computer system includes a processor and a persistent data storage device that is accessible by the processor. The system also may include file system software that is executed by the processor. The file system software may operate to organize the files of the persistent data storage device into a plurality of records that are contained in a metafile. Within the metafile, the files and directories of the file system may be organized in an inverted hierarchical structure. In the inverted hierarchical structure, records corresponding to child files and child directories of a parent directory may directly point to a record in the metafile that corresponds to the parent directory. In one implementation of the file system, individual records of the metafile may be each addressable by a file identifier. Each of the individual records, in turn, may include a parent identifier that corresponds to the file identifier of its parent directory record.
172 Citations
19 Claims
-
1. A computer system comprising:
-
an electronic storage medium; a persistent electronic data storage device; file system software stored on the electronic storage medium and executable by a processor to organize files and directories stored on the persistent electronic data storage device; a metafile stored on an electronic storage medium and accessible by the processor, the metafile comprising a plurality of electronic records that correspond to files on the persistent electronic data storage device and to directory containers for the files; where individual records of the plurality of records are accessed using a respective file identifier, where each individual child file and child directory record, which corresponds to a respective child file or a respective child directory, includes a parent identifier that identifies a respective parent directory record in the metafile, the respective parent directory record corresponding to a respective parent of the respective child file or the respective child directory, where the files and directories of the file system are organized in an inverted hierarchy in which the parent identifier included in the respective child file or respective child directory record defines a starting point for the inverted hierarchy associated with the respective child file record or the respective child directory record that ultimately terminates at the root directory of the file system, and where file and directory transactions for each child file and child directory are committed atomically as a change, addition, or deletion of only the respective child file record or the respective child directory record without a corresponding modification of the respective parent directory record, where the file and directory transactions include at least one of a file deletion, a file copy, and a file creation. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computer system comprising:
-
a memory storage device; and file system software stored on the memory storage device and executable by a processor, where the file system software is executable to organize files of a persistent data storage device using a plurality of records contained in at least one metafile, where the file system software organizes the files and directories in the at least one metafile in an inverted hierarchy in which each of the records corresponding to child files and child directories includes a respective parent identifier that points to a record in the at least one metafile of a respective parent directory so that the inverted hierarchy for each child file and each child directory starts at the respective child file or at the respective child directory and ultimately terminates at a root directory of a file system of the computer system, and where the file system software commits file and directory transactions for each child file and child directory atomically through a change, addition, or deletion of a single one of the records of the at least one metafile, which corresponds to a child file or a child directory subject to a respective file or directory transaction, without a corresponding modification of the respective parent directory record, where the file and directory transactions include at least one of a directory deletion, a directory copy, a directory creation, a file deletion, a file copy, and a file creation. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A processing system comprising:
-
data storage including a plurality of files; a processor; and a memory storage device comprising file system software executable by the processor to organize the files of the data storage using a plurality of metafile records, where the processing system includes a file system having a root directory, where the file system software organizes the plurality of files in an inverted hierarchy using a respective pointer for each child file and child directory in the plurality of metafile records so that the inverted hierarchy for each child file and child directory starts at the respective child file or respective child directory and ultimately terminates at the root directory, and where a child file transaction or a child directory transaction is executed atomically by an alteration, a deletion, or a creation of a single metafile record corresponding to the child file or the child directory that is subject to the child file transaction or child directory transaction without a corresponding alteration of a parent directory record that corresponds to a parent directory of the child file or the child directory, where the child file transaction or the child directory transaction includes at least one of a directory deletion, a directory copy, a directory creation, a file deletion, a file copy, and a file creation. - View Dependent Claims (16, 17)
-
-
18. A method for operating a processing system having a plurality of files comprising:
-
providing a file system starting at a root directory, where the file system includes a plurality of files and directories; providing a metafile record for each of the plurality of files and directories, where a metafile record for each child file and each directory includes a parent identifier that corresponds to a file identifier of a parent directory record for the respective child file or respective child directory so that the file system is arranged in an inverted hierarchy that includes a branch that starts at the respective child file or the respective child directory and terminates at the root directory of the file system; and executing a file transaction for a child file or a child directory by atomically altering, deleting, or adding a single metafile record corresponding to the child file or the child directory without altering the parent directory record of the child file or the child directory, where the file transaction includes at least one of a file deletion, a file copy, and a file creation. - View Dependent Claims (19)
-
Specification