Advanced Search

Browse by Discipline

Scientific Societies

E-print Alerts

Add E-prints

E-print Network

  Advanced Search  

Experience with a Distributed File System Implementation

Summary: Experience with a Distributed File System
Randolph Y. Wang and Thomas E. Anderson
University of California at Berkeley
Michael D. Dahlin
University of Texas at Austin
This paper highlights some of the lessons learned during the course of implementing xFS, a fully
distributed file system. xFS is an interesting case study for two reasons. First, xFS's serverless
architecture leads to more complex distributed programming issues than are faced by traditional
client­server operating system services. Second, xFS implements a complex, multithreaded service
that is tightly coupled with the underlying operating system. This combination turned out to be quite
challenging. On one hand, the complexity of the system forced us to turn to distributed programming
tools based on formal methods to verify the correctness of our distributed algorithms; on the other
hand the complex interactions with the operating system on individual nodes violated some of the
tools' assumptions, making it difficult to use them in this environment. Furthermore, the xFS system
tested the limits of abstractions such as threads, RPC, and vnodes that have traditionally been used
in building distributed file systems. Based on our experience, we suggest several strategies that should
be followed by those wishing to build distributed operating systems services, and we also indicate
several areas where programming tools and operating system abstractions might be improved.


Source: Anderson, Tom - Department of Computer Science and Engineering, University of Washington at Seattle
Dahlin, Michael D. - Department of Computer Sciences, University of Texas at Austin


Collections: Computer Technologies and Information Sciences