Managing the fetching and replacement of cache entries associated with a file system
First Claim
1. A method for managing the use and re-use of entries of a cache, said entries containing data retrieved from a mass storage into said cache to be thereafter available for use by a computer system, comprising the computer systemgrouping entries;
- assigning each entry a priority for storage relative to other entries of the same group;
identifying at least a first entry and a second entry belonging to different respective said groups which are related in a system of files in said mass storage; and
selecting one of said entries of said cache for re-use according to the priority for storage assigned to said entry and the priority for storage assigned to identified related entries.
2 Assignments
0 Petitions
Accused Products
Abstract
Information needed by application programs from a secondary storage is cached in a cache memory which is organized in multiple levels, each level having multiple entries, the entries of each level receiving information of a predetermined category, each entry being accessible independently. Links are defined between entries of one level of the cache memory and entries at another level of the cache memory, the links corresponding to information relationships specified by a user of information stored in the secondary storage. In response to a request to a file system from an application for needed information, the needed information is fetched into the cache, and in connection with fetching the needed information, other information is prefetched from the system of files which is not immediately needed. Quotas are established on information which may be fetched from a secondary storage into the cache, the quotas being applicable to file contents within a file and to the number of files within a directory. Upon a request from an application program to open a file, an entry is created in a cache corresponding to the file, the entry including file header information. The file header information is retained in the cache so long as the file remains open, whether or not any file contents of the file remain in cache. The entries of three level of the cache respectively receive directory information, file header information, and file contents information.
200 Citations
62 Claims
-
1. A method for managing the use and re-use of entries of a cache, said entries containing data retrieved from a mass storage into said cache to be thereafter available for use by a computer system, comprising the computer system
grouping entries; -
assigning each entry a priority for storage relative to other entries of the same group; identifying at least a first entry and a second entry belonging to different respective said groups which are related in a system of files in said mass storage; and selecting one of said entries of said cache for re-use according to the priority for storage assigned to said entry and the priority for storage assigned to identified related entries. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 22)
-
-
11. A method for caching information retrieved by application programs from files organized in a file system in mass storage, comprising
organizing a cache in at least two levels having multiple cache entries, including an upper level comprising directory entries storing directory file information and representing directories in said file system, and a lower level comprising file header entries storing file header information and representing files in said file system, identifying file header and directory entries related such that the identified directory entry represents the directory containing the file represented by the identified file header entry, and storing pointers in the cache linking the related entries, assigning each entry a priority for storage relative to the other entries in the same level, and managing use and re-use of said cache entries according to the priority for storage assigned to said entries.
-
50. A method comprising
storing in a cache information describing files and directories of files retrieved by application programs from a file system in which files are organized according to user-defined information relationships among said files and directories, storing in said cache contents of said files in response to a request to said file system from an application program, fetching needed information into a cache, and in connection with fetching said needed information, prefetching other information from said file system which is not immediately needed but is related to said needed information through said user-defined relationships among said files and directories.
-
58. A method of a managing a cache of information retrieved by application programs from a file system organized according to user-defined information relationships, said information including file contents as well as file headers describing files and directory files describing directories of files, comprising
establishing quotas that set a limit on the amount of information fetched from said mass storage into said cache, said quotas being applicable to the amount of file contents from a given file and the number of file headers from a given directory, and regulating the fetching of information from mass storage into said cache based on said quotas.
-
61. A method for storing in a cache files retrieved from a file system in a computer system, comprising the computer system
storing in a cache, information describing files and directories of files retrieved by application programs from a file system, storing in said cache, contents of said files upon a request from an application program to open a file, determining whether an entry storing the header of said file is stored in said cache, and if not creating such an entry, and retaining said entry in said cache so long as said file remains open, whether or not any said contents of said file are stored in said cache.
Specification