Filesystem having a filename cache
First Claim
Patent Images
1. A system comprising:
- a processor;
a data storage device accessible by the processor; and
a filesystem software executable by the processor to organize a plurality of files on the data storage device, where the filesystem software is executable to maintain a filename cache comprising a plurality of entries, where each entry of the plurality of entries comprises a filename header section and a name section, where the name section stores an entire filename of a corresponding file,where the filesystem software is further executable to identify a given entire filename to be stored in the name section of one of the plurality of entries, determine a number of bytes to allocate to the name section of the one of the plurality of entries based on the given entire filename to be stored and to allocate the determined number of bytes to the given name section of the one of the plurality of entries, thereby creating a variable size filename entry,where the filesystem software is further executable to characterize each of the plurality of entries based on a namesum value of each of the plurality of entries where the namesum value of each of the plurality of entries is calculated based on the entire filename stored in the name section of each of the plurality of entries, further where the filename header section of each of the plurality of entries comprises an index to a next entry of the plurality of entries characterized by a same namesum value.
13 Assignments
0 Petitions
Accused Products
Abstract
A system comprising a processor, a data storage device that is accessible by the processor, and filesystem software that is executable by the processor to organize files on the data storage device are provided. The filesystem software is executable to maintain a filename cache having variable size filename entries. The filename entries may include a filename header section and a name section storing an entire filename of a corresponding file.
131 Citations
50 Claims
-
1. A system comprising:
-
a processor; a data storage device accessible by the processor; and a filesystem software executable by the processor to organize a plurality of files on the data storage device, where the filesystem software is executable to maintain a filename cache comprising a plurality of entries, where each entry of the plurality of entries comprises a filename header section and a name section, where the name section stores an entire filename of a corresponding file, where the filesystem software is further executable to identify a given entire filename to be stored in the name section of one of the plurality of entries, determine a number of bytes to allocate to the name section of the one of the plurality of entries based on the given entire filename to be stored and to allocate the determined number of bytes to the given name section of the one of the plurality of entries, thereby creating a variable size filename entry, where the filesystem software is further executable to characterize each of the plurality of entries based on a namesum value of each of the plurality of entries where the namesum value of each of the plurality of entries is calculated based on the entire filename stored in the name section of each of the plurality of entries, further where the filename header section of each of the plurality of entries comprises an index to a next entry of the plurality of entries characterized by a same namesum value. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A system comprising:
-
a filename cache; and a filesystem software organizing the filename cache into a plurality of variable size filename entries, where each variable size filename entry of the plurality of variable size filename entries comprises a filename header section and a name section, where the name section stores a filename of a corresponding file, identifying a given filename to be stored in the name section of one of the plurality of variable size filename entries, determining a number of bytes to allocate to the name section of the one of the plurality of variable size filename entries based on the given filename to be stored, allocating the determined number of bytes to the given name section of the one of the plurality of variable size filename entries, and characterizing each of the plurality of variable size filename entries based on a namesum value of each of the plurality of variable size filename entries, where the namesum value of each of the plurality of variable size filename entries is determined based on the filename stored in the name section of each of the plurality of variable size filename entries, where the filename header section of at least one of the plurality of variable size filename entries comprises an index to a next variable size filename entry of the plurality of variable size filename entries characterized by a common namesum value. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27)
-
-
28. A method for operating a filesystem comprising:
-
allocating a storage space to a filename cache; organizing the filename cache into a plurality of variable size filename entries, where each variable size filename entry of the plurality of variable size filename entries comprises a filename header section and a name section, where the name section stores a filename of a corresponding file; identifying a given filename to be stored in the name section of one of the plurality of variable size filename entries; determining a number of bytes to allocate to the name section of the one of the plurality of variable size filename entries based on the given filename to be stored; allocating the determined number of bytes to the given name section of the one of the plurality of variable size filename entries; and characterizing each of the plurality of variable size filename entries based on a namesum value of each of the plurality of variable size filename entries, where the namesum value of each of the plurality of variable size filename entries is calculated based on the filename stored in the name section of each of the plurality of variable size filename entries, where the filename header section of at least one of the plurality of variable size filename entries comprises an index to a next variable size filename entry of the plurality of variable size filename entries characterized by a common namesum value. - View Dependent Claims (29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41)
-
-
42. A storage medium comprising code adapted to execute a method for operating a filesystem comprising:
-
allocating a storage space to a filename cache; organizing the filename cache into a plurality of variable size filename entries, where each variable size filename entry of the plurality of variable size filename entries comprises a filename header section and a name section, where the name section stores a filename of a corresponding file; and characterizing each of the plurality of variable size filename entries based on a namesum value of each of the plurality of variable size filename entries, where the namesum value of each of the plurality of variable size filename entries is calculated based on the filename stored in the name section of each of the plurality of variable size filename entries, where at least one of the plurality of variable size filename entries comprises an index to a next variable size filename entry of the plurality of variable size filename entries characterized by a common namesum value. - View Dependent Claims (43, 44, 45, 46, 47, 48, 49, 50)
-
Specification