Simplifying Distributed File Systems Using a Shared Logical Disk

We present a new approach to building noncentralized (\serverless") distributed le systems, using the shared logical disk, which provides the abstraction of a fault-tolerant, entry-consistent, shared array of persistent data blocks. By separating the storage management level from higher-level le system functions like metadata management, we signi cantly reduce the overall complexity of the le system's implementation. We describe the implementation of a le system and an underlying shared logical disk, designed to run on workstation networks and on the SHRIMP multicomputer. The le system level is very similar to a conventional uniprocessor le system, relying on the underlying shared logical disk to handle all communication, caching, and coherence operations. The shared logical disk provides some simple hooks to allow the le system to express its faulttolerance requirements. We believe the resulting design is much simpler than other non-centralized distributed le systems.

[1]  Mendel Rosenblum,et al.  The design and implementation of a log-structured file system , 1991, SOSP '91.

[2]  Michael N. Nelson,et al.  Caching in the Sprite network file system , 1988, TOCS.

[3]  Andrew R. Cherenson,et al.  The Sprite network operating system , 1988, Computer.

[4]  David A. Patterson,et al.  Cooperative Caching: Using Remote Client Memory , 1994 .

[5]  Cezary Dubnicki,et al.  Stream Sockets on SHRIMP , 1997, CANPC.

[6]  C. R. Atanasio Design and implementation of a re-coverable virtual shared disk , 1994 .

[7]  Randy H. Katz,et al.  A case for redundant arrays of inexpensive disks (RAID) , 1988, SIGMOD '88.

[8]  Garret Swart,et al.  A coherent distributed file cache with directory write-behind , 1994, TOCS.

[9]  Anna R. Karlin,et al.  Implementing global memory management in a workstation cluster , 1995, SOSP.

[10]  J. Howard Et El,et al.  Scale and performance in a distributed file system , 1988 .

[11]  Wilson C. Hsieh,et al.  The logical disk: a new approach to improving file systems , 1994, SOSP '93.

[12]  Liviu Iftode,et al.  Early Experience with Message-Passing on the SHRIMP Multicomputer , 1996, 23rd Annual International Symposium on Computer Architecture (ISCA'96).

[13]  Yale N. Patt,et al.  Metadata update performance in file systems , 1994, OSDI '94.

[14]  Maurice J. Bach The Design of the UNIX Operating System , 1986 .

[15]  J. Wilkes DataMesh-parallel storage systems for the 1990s , 1991, [1991] Digest of Papers Eleventh IEEE Symposium on Mass Storage Systems.