The Coda Distributed File System
📜 Abstract
The Coda distributed file system is a state-of-the-art experimental file system developed in the group of M. Satyanarayanan at Carnegie Mellon University (CMU). Numerous people contributed to Coda, which now incorporates many features not found in other systems:
✨ Summary
The article presents Coda as an experimental distributed file system designed to provide a single global namespace, persistent client-side caching, write-back caching, replicated storage, disconnected operation, reintegration after reconnection, conflict resolution, authentication, and access-control lists. Its design targets both improved availability during server or network failures and practical support for mobile clients. The system uses volumes as administrative units, replicated volume-storage groups for read/write replication, and a client cache manager that mediates access between applications and remote servers. (linuxjournal.com)
Coda influenced subsequent work in several documented ways. The InterMezzo file system explicitly sought to retain advanced protocol features associated with Coda while simplifying the implementation, and adopted related concepts such as persistent caching, disconnected-operation metadata, write-back caching, and volume-like file sets. (cs.cmu.edu) Coda’s disconnected-operation mechanisms were also evaluated through extended mobile-environment usage, with results supporting the feasibility of the approach and identifying further requirements. (usenix.org) A later retrospective reported that elements of Coda’s design were incorporated into the IntelliMirror component of Microsoft Windows 2000, providing a documented example of influence on commercial software. (researchgate.net) The Coda kernel interface also remains documented in Linux kernel materials, reflecting its role as an implemented research system and reference design. (kernel.org)