Claims
- 1. In a computer system, a method of providing access to file system object data, comprising:receiving a request to read data from a client application, the data residing on at least one of a local and a remote source, the client application being unaware of where the data resides, wherein the remote source includes a plurality of servers that are enlisted to provide the data; determining where the data resides; if the data does not reside on the local source, retrieving the data from the remote source and storing at least some of the data on the local source; otherwise retrieving the data from the local source; providing the data to the client application; receiving a request from the client application to modify the data; modifying at least some of the data that is stored on the local source; and automatically updating the data on the remote source to synchronize the data on the remote source with the data on the local source, wherein a server enlists to provide the data by performing acts, comprising: sending an enlist primitive to notify the plurality of servers that the server wants to participate in providing the data; and receiving a response from at least one of the plurality of servers.
- 2. The method of claim 1, wherein the at least some of the data that is stored in the local source is stored in memory that serves as a file system.
- 3. The method of claim 2, wherein the memory serves as a ramdisk.
- 4. The method of claim 1, wherein the at least some of the data that is stored on the local source is stored in main memory, the main memory not serving as a file system.
- 5. The method of claim 4, wherein the data is part of an object that is marked as synchronize-always and wherein the data is always retrieved from the remote source when a request to read the data is received.
- 6. The method of claim 1, wherein the data is part of an object marked as local-always, wherein after the data is retrieved from the remote source, the data remains on the local source and is not removed via a least-recently-used algorithm employed to make room on the local source for other data.
- 7. The method of claim 1, wherein the data is transmitted via a connection that is created just before the data is transmitted and that is destroyed immediately thereafter.
- 8. The method of claim 1 wherein determining where the data resides comprises accessing attributes of an object associated with the data.
- 9. The method of claim 1, wherein the server that is enlisting to provide the data performs further acts, comprising resending the enlist primitive to any of the plurality of servers that has not responded to the enlist primitive.
- 10. The method of claim 9, wherein resending the enlist primitive is transmitted directly to servers that have not responded.
- 11. The method of claim 1, wherein the enlist primitive is sent via a broadcast.
Parent Case Info
This application claims benefit of Provisional Nos. 60/126,094 filed Mar. 25, 1999 and 60/171,995 filed Dec. 23, 1999.
US Referenced Citations (7)
Number |
Name |
Date |
Kind |
3735360 |
Anderson et al. |
May 1973 |
A |
5721916 |
Pardikar |
Feb 1998 |
A |
5893920 |
Shaheen et al. |
Apr 1999 |
A |
6243760 |
Armbruster et al. |
Jun 2001 |
B1 |
6260061 |
Krishnan et al. |
Jul 2001 |
B1 |
6269371 |
Ohnishi |
Jul 2001 |
B1 |
6578054 |
Hopmann et al. |
Jun 2003 |
B1 |
Foreign Referenced Citations (3)
Number |
Date |
Country |
0 713 183 |
May 1996 |
EP |
10 149310 |
Feb 1998 |
JP |
WO 9822881 |
May 1998 |
WO |
Non-Patent Literature Citations (3)
Entry |
Huizinga et al., “Mobile File System Support with Virtual Device Drivers,” Proceedings of the 1999 ACM Symposium on Applied Computing, San Antonio, TX, pp. 373-381 (Mar. 2, 1999). |
Schroeder, et al., “A Caching File System for a Programmer's Workstation,” Proceedings of the ACM Symposium on Operating System Principles, Association for Computing Machinery, pp. 25-34 (Dec. 1, 1985). |
Copy of International Search Report from corresponding PCT Application No. PCT/US00/07973 mailed Dec. 21, 2001. |
Provisional Applications (2)
|
Number |
Date |
Country |
|
60/171995 |
Dec 1999 |
US |
|
60/126094 |
Mar 1999 |
US |