System and method for efficient cache management in a distributed file system
First Claim
1. A method of managing a file system cache in a client computer system operating under a first operating system, the method comprising the steps of:
- intercepting operating system requests for a file system object in a distributed file system;
transforming said requests to remove operating system dependent syntax;
testing a cache in a storage means of said client for the presence of file system object data based on said transformed request;
satisfying said transformed request for said file system object data, if cache data exists;
testing to determine whether a connection exists to said distributed file system;
generating a request for said file system object from said distributed file system, without regard to distributed file system protocol, if no cache data exists and there is a connection;
transmitting said request to said distributed file system; and
rejecting said file system object request, if no cache data exists and there is no connection.
1 Assignment
0 Petitions
Accused Products
Abstract
A cache manager efficiently supporting both connected and disconnected client operation. A single integrated cache is maintained for file system data, status and pathname information. File system requests are satisfied by the cache if possible and passed to a remote file system for servicing if necessary. The cache manager is independent of operating system file syntax and distributed file system protocol. Disconnected operation is supported through an aggressive caching policy and by logging of file system modifications. Modification logs are created when the client is disconnected by logging objects that optimize the log as it is created. Cache file system objects can have multiple parents each with different naming syntax because the object name is not cached.
-
Citations
12 Claims
-
1. A method of managing a file system cache in a client computer system operating under a first operating system, the method comprising the steps of:
-
intercepting operating system requests for a file system object in a distributed file system; transforming said requests to remove operating system dependent syntax; testing a cache in a storage means of said client for the presence of file system object data based on said transformed request; satisfying said transformed request for said file system object data, if cache data exists; testing to determine whether a connection exists to said distributed file system; generating a request for said file system object from said distributed file system, without regard to distributed file system protocol, if no cache data exists and there is a connection; transmitting said request to said distributed file system; and rejecting said file system object request, if no cache data exists and there is no connection. - View Dependent Claims (2, 3)
-
-
4. A computer file system comprising:
-
cache means for storing file system object data in a storage means; cache management means for satisfying operating system requests for file system objects using said cache means, said cache management means being independent of operating system syntax and independent of distributed file system protocol, said cache management means implemented within a client computer system, said cache management means further comprising; means for intercepting an operating system request, from said first operating system, for a file system object stored in a remote server computer system operating under a second operating system in said distributed file system; means for transforming said request to remove operating system dependent syntax; means for testing a cache in a storage means of said client computer system for the presence of file system object data based on said transformed request; means for satisfying said file system object request from said cache, if said file system object data based on said transformed request is present in said cache; network means detachably connecting said cache management means to a file system object server; and remote file access means for accessing file system object requests through said network means. - View Dependent Claims (5)
-
-
6. A computer system cache apparatus for maintaining file system information, comprising:
-
storage means for storing a plurality of file system object data entries; link means for linking each of said plurality of file system object data entries to a file volume; and second link means for linking each of said plurality of file system object data entries to either a location in local data storage, a directory cache in local memory, or a symbolic link in local memory, wherein said plurality of file system object data entries are independent of any file system object name and are referencable by multiple file system object parents each having different naming syntax. - View Dependent Claims (7, 8, 9, 10, 11, 12)
-
Specification