← Back to Patent Explorer
EP0604013A2 Expired / Lapsed EP ⏱️ 0.0 years remaining

Method and apparatus for a caching file server

Assignee: Sun Microsystems Inc
•
Filing: 1993-11-15
•
Granted: —
•
Expires: 2013-11-15
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method and apparatus are described for a caching file server ("CFS") system which permits end user client programs on a local node of a distributed computer system, to issue requests to read/write data to a remote file and to query/set attributes of the remote file, and to have these requests serviced by the CFS in a way which minimizes the caching resources used as well as minimizes the related network communications. The CFS establishes CFS file programs to interface with the client programs, and sets up a common CFS cache for the file attributes, which cache is kept current via a communications link to a file program in a file server at the remote node containing the file, wherein the file program automatically updates the common CFS cache whenever any attributes change. The CFS also caches the results of bind operations in order to further minimize network calls and redundant cache usage. In addition the CFS coordinates all client program requests for read/write data requests with a virtual memory manager ("VMM") on the local node, servicing all client programs from a single pager program in the VMM which is coupled to a cache program in the file server of the remote node. VMM page-in/page-out operations go directly to the remote file server without CFS intervention. In this manner, network communications and related processing overhead as well as memory resources may be minimized by use of the VMM for caching file data and the Common CFS cache for caching file attributes.

Inventors

  • 👤 Michael N. Nelson
  • 👤 Yousef A. Khalidi

Bibliographic Details

Application Number —
Jurisdiction EP
Data Source google_patents
Last Synchronized 2026-10-25 04:02
CPC Classifications
G; G06; G06F; G06F12/00; G06F12/02; G06F12/08; G06F12/0802; G06F12/0806; G06F16/00; G06F16/10; G06F16/17; G06F16/172; G06F16/18; G06F16/182; Y; Y10; Y10S; Y10S707/00; Y10S707/99951; Y10S707/99956

Claims Analysis

Total Claims: 44
Claim 1
Independent Claim 170 words
A data processing system having one or more file systems and connected at a local computer to at least one remote computer by a communications link, and said local computer having a virtual memory manager ("VMM"), said data processing system comprising: a. at least one file in the one or more files systems; b. a caching file server ("CFS") in said local computer which provides caching services for the at least one file, said CFS comprising a first file program in the CFS which recognizes requests from a first client program, to read/write data to the at least one file and which coordinates the caching of read/write data to the at least one file with the VMM in the local computer, and wherein said CFS recognizes requests to query/set attributes of the at least one file and caches said file attributes in the CFS, whereby the caching services provided by the CFS and the VMM for the first client program need not be duplicated and may minimize data transfer overhead.
Claim 2
Dependent Claim 112 words
The data processing system as recited in claim 1 wherein said first file program in the CFS recognizes requests from a second client program, to read/write data to the at least one file and recognizes requests from the second client program to query/set attributes of the at least one file, and wherein said CFS coordinates the caching of read/write data to the at least one file with the VMM in the local computer, and wherein said CFS caches said file attributes in the CFS, whereby the caching services provided by the CFS and the VMM for said first and second client programs need not be duplicated and may minimize data transfer overhead.
Claim 3
Dependent Claim 30 words
The data processing system as recited in claim 2 wherein the CFS services both the first client program and the second client program by use of a common CFS cache.
Claim 4
Dependent Claim 32 words
The data processing system as recited in claim 3 wherein bind requests are processed by the CFS, and wherein the CFS uses the common CFS cache to cache results of bind operations.
Claim 5
Dependent Claim 26 words
The data processing system as recited in claim 4 wherein the CFS uses the common CFS cache to cache attributes of the at least one file.
Claim 6
Dependent Claim 50 words
The data processing system as recited in claim 5 further comprising a file program in a file server located on the at least one remote computer and a communications link between said file program and the CFS for supplying attribute data of the at least one file to the CFS.
Claim 7
Dependent Claim 63 words
The data processing system as recited in claim 6 wherein the file program in the file server located on the at least one remote computer supplies new attribute data from the at least one file to the common CFS cache to maintain coherent file attribute data, thereby permitting the CFS to control "set length" and "write" operations to said at least one file.
Claim 8
Dependent Claim 75 words
The data processing system as recited in claim 6 further comprising a cache program in the file server and a communications link between said cache program and a pager program in the VMM for supplying file data to and from the at least one file to the VMM, in response to page-in/page-out from the pager program in said VMM, whereby said VMM services requests from CFS programs for data from the at least one file.
Claim 9
Dependent Claim 16 words
The data processing system as recited in claim 8 wherein said programs are object oriented programs.
Claim 10
Dependent Claim 145 words
A data processing system having one or more file systems and a virtual memory manager ("VMM"), said data processing system comprising: a. at least one file in the one or more file systems; b. a caching file server ("CFS") which provides caching services for the at least one file, said CFS comprising a file program in the CFS which recognizes requests from a first client program to read/write data to the at least one file and which coordinates the caching of read/write data to the at least one file with the VMM, and said file program in the CFS recognizes requests to query/set attributes of the at least one file and caches said file attributes in the CFS. whereby the caching services provided by the CFS and the VMM for the first client program need not be duplicated and disk input/output operations may be reduced..
Claim 11
Dependent Claim 103 words
The data processing system as recited in claim 10 wherein the file program in the CFS recognizes requests from a second client program to read/write data to the at least one file and coordinates the caching of read/write data to the at least one file with the VMM, and recognizes requests from the second client program to query/set attributes of the at least one file and caches said file attributes in the CFS, whereby the caching services provided by the CFS and the VMM for said first and second client programs need not be duplicated and related disk input/output operations may be reduced.
Claim 12
Dependent Claim 30 words
The data processing system as recited in claim 11 wherein the CFS services both the first client program and the second client program by use of a common CFS cache.
Claim 13
Dependent Claim 23 words
The data processing system as recited in claim 12 wherein the CFS uses the common CFS cache to cache results of bind operations.
Claim 14
Dependent Claim 26 words
The data processing system as recited in claim 13 wherein the CFS uses the common CFS cache to cache attributes of the at least one file.
Claim 15
Dependent Claim 50 words
The data processing system as recited in claim 14 further comprising a file program in a file server containing the at least one file and a communications link between said file program and the common CFS cache for supplying attribute data of the at least one file to the CFS.
Claim 16
Dependent Claim 38 words
The data processing system as recited in claim 15 wherein the file program in the file server supplies new attribute data from the at least one file to the common CFS cache to maintain coherent file attribute data.
Claim 17
Dependent Claim 65 words
The data processing system as recited in claim 16 further comprising a cache program in the file server and a communications link between said cache program and a pager program in the VMM, for supplying file data to and from the at least one file, in response to page-in/page-out from the VMM, whereby said VMM services requests for data from the at least one file.
Claim 18
Dependent Claim 16 words
The data processing system as recited in claim 17 wherein said programs are object oriented programs.
Claim 19
Independent Claim 173 words
A method, performed by a computer, of accessing a remote file from a local computer in a data processing system having one or more file systems and connected at said local computer to at least one remote computer by a communications link, and said local computer having a virtual memory manager ("VMM"), said method comprising: a. establishing a caching file server ("CFS") in said local computer which provides caching services for at least one file; and b. establishing a file program in the CFS which recognizes requests from a first client program to read/write data to the at least one file and which coordinates the caching of read/write data to the at least one file with the VMM, and which recognizes requests to query/set attributes of the at least one file and caches said file attributes in the CFS, whereby the caching services provided by the CFS and the VMM for the first client program need not be duplicated and related network communications traffic between the local and remote computers may be minimized.
Claim 20
Dependent Claim 110 words
The method as recited in claim 19 further comprising the additional steps of recognizing requests from a second client program to read/write data to the at least one file and coordinating the caching of read/write data to the at least one file with the VMM in the local computer, and recognizing requests from the second client program to query/set attributes of the at least one file and caching said file attributes in the CFS, whereby the caching services provided by the CFS and the VMM for said first and second client programs need not be duplicated and related network communications traffic between the local and remote computers may be minimized.
Claim 21
Dependent Claim 28 words
The method as recited in claim 20 wherein the CFS services both the first client program and the second client program by use of a common CFS cache.
Claim 22
Dependent Claim 21 words
The method us recited in claim 21 wherein the CFS uses the common CFS cache to cache results of bind operations.
Claim 23
Dependent Claim 24 words
The method as recited in claim 22 wherein the CFS uses the common CFS cache to cache attributes of the at least one file.
Claim 24
Dependent Claim 44 words
The method as recited in claim 23 further comprising the steps of establishing a communications link between a file program in a file server and the common CFS cache for supplying attribute data of the at least one file to the common CFS cache.
Claim 25
Dependent Claim 36 words
The method as recited in claim 24 wherein the file program in the file server supplies new attribute data from the at least one file to the common CFS cache to maintain coherent file attribute data.
Claim 26
Dependent Claim 82 words
The method as recited in claim 25 further comprising a step of establishing a cache program in the file server and a communications link between the cache program and a pager program in the VMM, said VMM being located on the local computer, for supplying file data to and from the at least one file, in response to page-in/page-out from the pager program in said VMM, whereby said VMM services requests from CFS programs for data from the at least one file.
Claim 27
Dependent Claim 203 words
A computer program product having a computer readable medium having a computer program recorded thereon for use in a data processing system for accessing from a local computer at least one file in a file system residing at a remote computer, wherein said local computer has a virtual memory manager ("VMM") and is connected to at least one remote computer by a communication link, said computer program product comprising: a. a first program code mechanism capable of establishing a caching file server ("CFS") in said local computer which provides caching services for the at least one file, said CFS comprising a file program in the CFS capable of recognizing requests from a first client program to read/write data to the at least one file and coordinate the caching of read/write data to the at least one file with the VMM in the local computer; and which is capable of recognizing requests to query/set attributes of the at least one file and of caching said file attributes in the CFS, whereby the caching services provided by the CFS and the VMM for the first client program need not be duplicated and related network communications traffic between the local and remote computers may be minimized.
Claim 28
Dependent Claim 122 words
The computer program product as recited in claim 27 wherein the file program in the CFS is capable of recognizing requests from a second client program to read/write data to the at least one file and of coordinating the caching of read/write data to the at least one file with the VMM in the local computer, and which is capable of recognizing requests from the second client program to query/set attributes of the at least one file and of caching said file attributes in the CFS, whereby the caching services provided by the CFS and the VMM for said first and second client programs may not be duplicated and related network communications traffic between the local and remote computers may be minimized.
Claim 29
Dependent Claim 41 words
The computer program product as recited in claim 28 further comprising a common CFS cache which is capable of allowing the CFS to service both the first client program and the second client program by use of said common CFS cache.
Claim 30
Dependent Claim 26 words
The computer program product as recited in claim 29 wherein the CFS is able to use the common CFS cache to cache results of bind operations.
Claim 31
Dependent Claim 29 words
The computer program product as recited in claim 30 wherein the CFS is able to use the common CFS cache to cache attributes of the at least one file.
Claim 32
Dependent Claim 54 words
The computer program product as recited in claim 31 further comprising an ability to establish a communications link between a file program in a file server located on the at least one remote computer and the common CFS cache for supplying attribute data of the at least one file to the common CFS cache.
Claim 33
Dependent Claim 46 words
The computer program product as recited in claim 32 wherein the common CFS cache is able to receive new attribute data from the at least one file which is supplied by the file program in the file server in order to maintain coherent file attribute data.
Claim 34
Dependent Claim 87 words
The computer program product as recited in claim 33 further comprising an ability to establish a cache program in the file server and a communications link between said cache program and a pager program in a VMM, said VMM being located on the local computer, for supplying file data to and from the at least one file, in response to page-in/page-out from the pager program in said VMM, whereby said VMM is able to service requests from CFS programs for data from the at least one file.
Claim 35
Dependent Claim 16 words
The computer program product as recited in claim 34 wherein said programs are object oriented programs.
Claim 36
Dependent Claim 166 words
A computer program product having a computer readable medium having a computer program recorded thereon for use in a data processing system for accessing at least one file in a file system, said computer program product comprising: a. a first program code mechanism for establishing a caching file server ("CFS") which has the ability to provide caching services for the at least one file, said CFS comprising a file program in the CFS which has the ability to recognize requests from a first client program to read/write data to the at least one file and to coordinate the caching of read/write data to the at least one file with a virtual memory manager ("VMM"), and which has the ability to recognize requests to query/set attributes of the at least one file and to cache said attributes in the CFS, whereby the caching services provided by the CFS and the VMM for the first client program need not be duplicated, and disk input/output operations may be reduced.
Claim 37
Dependent Claim 100 words
The computer program product as recited in claim 32 further comprising an ability to recognize requests from a second client program to read/write data to the at least one file and to coordinate the caching of read/write data to the at least one file with the VMM, and which has the ability to recognize requests from the second client program to query/set attributes of the at least one file and to cache said file attributes in the CFS, whereby the caching services provided by the CFS and the VMM for said first and second client programs may not be duplicated.
Claim 38
Dependent Claim 40 words
The computer program product as recited in claim 37 further comprising a common CFS cache which enables the CFS to service both the first CFS file program and the second CFS file program by use of said common CFS cache.
Claim 39
Dependent Claim 26 words
The computer program product as recited in claim 38 wherein the CFS is able to use the common CFS cache to cache results of bind operations.
Claim 40
Dependent Claim 29 words
The computer program product as recited in claim 39 wherein the CFS is able to use the common CFS cache to cache attributes of the at least one file.
Claim 41
Dependent Claim 46 words
The computer program product as recited in claim 40 further comprising an ability to establish a communication link between a file program in a file server and the common CFS cache for supplying attribute date of the at least one file to the common CFS cache.
Claim 42
Dependent Claim 44 words
The computer program product as recited in claim 41 wherein the common CFS cache is able to receive new attribute data from the at least one file as supplied by the file program in the file server to maintain the file attribute data coherent.
Claim 43
Dependent Claim 79 words
The computer program product as recited in claim 42 further comprising an ability to establish a cache program in the file server and a communications link between the cache program and a pager program in the VMM, for supplying file data to and from the at least file, in response to page-in/page-out from the pager program in said VMM, whereby said VMM is able to service requests from CFS file programs for data from the at least one file.
Claim 44
Dependent Claim 16 words
The computer program product as recited in claim 43 wherein said programs are object oriented programs.

References Cited (Backward Citations)

No citation records indexed.

USPTO Annuity & Maintenance Windows

Maintenance schedule is calculated for granted US utility patents.

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag