Disconnected Operation in the Coda File System

  • James J. Kistler
  • M. Satyanarayanan
Part of the The Kluwer International Series in Engineering and Computer Science book series (SECS, volume 353)


Disconnected operation is a mode of operation that enables a client to continue accessing critical data during temporary failures of a shared data repository. An important, though not exclusive, application of disconnected operation is in supporting portable computers. In this paper, we show that disconnected operation is feasible, efficient and usable by describing its design and implementation in the Coda File System. The central idea behind our work is that caching of data, now widely used for performance, can also be exploited to improve availability.


File System Local Disk Distribute File System Cache Management Cache Coherence Protocol 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [1]
    Burrows, M., “Efficient Data Sharing”, Ph.D. Thesis, University of Cambridge, Computer Laboratory, December, 1988.Google Scholar
  2. [2]
    Cate, V., Gross, T., “Combining the Concepts of Compression and Caching for a Two-Level File System”, Proceedings of the 4th ACM Symposium on Architectural Support for Programming Languages and Operating Systems, April 1991.Google Scholar
  3. [3]
    Cova, L.L., “Resource Management in Federated Computing Environments”, Ph.D. Thesis, Department of Computer Science, Princeton University, October 1990.Google Scholar
  4. [4]
    Davidson, S., “Optimism and Consistency in Partitioned Distributed Database Systems”, ACM Transactions on Database Systems, Vol. 3,No. 9, September 1984.Google Scholar
  5. [5]
    Davidson, S.B., Garcia-Molina, H., Skeen, D., “Consistency in Partitioned Networks”, ACM Computing Surveys, Vol 17,No 3, September, 1985.Google Scholar
  6. [6]
    Floyd, R.A., “Transparency in Distributed File Systems”, Technical Report TR 272, Department of Computer Science, University of Rochester, 1989.Google Scholar
  7. [7]
    Gray, C.G., Cheriton, D.R., “Leases: An Efficient Fault-Tolerant Mechanism for Distributed File Cache Consistency”, Proceedings of the 12th ACM Symposium on Operating System Principles, December 1989.Google Scholar
  8. [8]
    Hisgen, A., Birrell, A., Mann, T., Schroeder, M., Swart, G., “Availability and Consistency Tradeoffs in the Echo Distributed File System”, Proceedings of the Second Workshop on Workstation Operating Systems, September, 1989.Google Scholar
  9. [9]
    Howard, J.H., Kazar, M.L., Menees, S.G., Nichols, D.A., Satyanarayanan, M., Sidebotham, R.N., West, M.J., “Scale and Performance in a Distributed File System”, A CM Transactions on Computer Systems, Vol. 6,No. 1, February 1988.Google Scholar
  10. [10]
    Kleiman, S.R., “Vnodes: An Architecture for Multiple File System Types in Sun UNIX”, Summer Usenix Conference Proceedings, 1986.Google Scholar
  11. [11]
    Kumar, P., Satyanarayanan, M., “Log-Based Directory Resolution in the Coda File System”, Proceedings of the Second International Conference on Parallel and Distributed Information Systems, San Diego, CA, January 1993.Google Scholar
  12. [12]
    Mashburn, H., Satyanarayanan, M., “RVM: Recoverable Virtual Memory User Manual”, School of Computer Science, Carnegie Mellon University, 1991.Google Scholar
  13. [13]
    Needham, R.M., Herbert, A.J., “Report on the Third European SIGOPS Workshop: “Autonomy or Interdependence in Distributed Systems”, SIGOPS Review, Vol. 23,No. 2, April 1989.Google Scholar
  14. [14]
    Ousterhout, J., Da Costa, H., Harrison, D., Kunze, J., Kupfer, M., “A Trace-Driven Analysis of the 4.2BSD File System”, Proceedings of the 10th ACM Symposium on Operating System Principles, December 1985.Google Scholar
  15. [15]
    Sandberg, R., Goldberg, D., Kleiman, S., Walsh, D., Lyon, B., “Design and Implementation of the Sun Network Filesystem”, Summer Usenix Conference Proceedings, 1985.Google Scholar
  16. [16]
    Satyanarayanan, M., “On the Influence of Scale in a Distributed System”, Proceedings of the 10th International Conference on Software Engineering, April 1988.Google Scholar
  17. [17]
    Satyanarayanan, M., Kistler, J.J., Kumar, P., Okasaki, M.E., Siegel, E.H., Steere, D.C., “Coda: A Highly Available File System for a Distributed Workstation Environment”, IEEE Transactions on Computers, Vol. 39,No. 4, April 1990.Google Scholar
  18. [18]
    Satyanarayanan, M., “Scalable, Secure, and Highly Available Distributed File Access”, IEEE Computer, Vol. 23,No. 5, May 1990.Google Scholar
  19. [19]
    Schroeder, M.D., Gifford, D.K., Needham, R.M., “A Caching File System for a Programmer’s Workstation”, Proceedings of the 10th ACM Symposium on Operating System Principles, December 1985.Google Scholar
  20. [20]
    Steere, D.C., Kistler, J.J., Satyanarayanan, M., “Efficient User-Level Cache File Management on the Sun Vnode Interface”, Summer Usenix Conference Proceedings, Anaheim, June 1990.Google Scholar
  21. [21]
    “Decorum File System”, Transarc Corporation, January 1990.Google Scholar
  22. [22]
    Walker, B., Popek, G., English, R., Kline, C, Thiel, G., “The LOCUS Distributed Operating System”, Proceedings of the 9th ACM Symposium on Operating System Principles, October, 1983Google Scholar

Copyright information

© the Association for Computing Machinery, Inc. 1992

Authors and Affiliations

  • James J. Kistler
    • 1
  • M. Satyanarayanan
    • 1
  1. 1.School of Computer ScienceCarnegie Mellon UniversityUSA

Personalised recommendations