This book contains a comprehensive survey of distributed systems, both file and operating systems. It also covers the majority of closely related projects, including both historical and presently existing approaches. The survey is organized as an encyclopedia, and each system is independently described. The descriptions of the systems accord with a catalogue of criteria covering the major design issues, such as transparency levels, heterogeneity, security, and availability. The book is the first to give: - Accessible information on the majority of distributed systems, - A table comparing the systems and summarizing the information, - Contact addresses and more than 600 references to the literature. In general, distributed systems can be classified into Distributed File Systems (DFS) and Distributed Operating Systems (DOS). The survey which follows distinguishes be tween DFS approaches in Chapters 2-3, and DOS approaches in Chapters 4-5. Within DFS and DOS, I further distinguish "traditional" and object-oriented approaches. A traditional approach is one where processes are the active components in the systems and where the name space is hierarchically organized. In a centralized environment, UNIX would be a good example of a traditional approach. On the other hand, an object-oriented approach deals with objects in which all information is encapsulated. Some systems of importance do not fit into the DFS/DOS classification. I call these systems "closely related" and put them into Chapter 6. Chapter 7 contains a table of comparison. This table gives a lucid overview summarizing the information provided and allowing for quick access. The last chapter is added for the sake of completeness. It contains very brief descriptions of other related systems. These systems are of minor interest or do not provide transparency at all. Sometimes I had to assign a system to this chapter simply for lack of adequate information about it. 1 Introduction.- 1.1 Presentation of a Catalogue of Criteria.- 1.2 Organization of the Survey.- 2 Traditional Distributed File Systems.- 2.1 Alpine.- 2.2 Andrew File System (AFS).- 2.3 Cedar File System (CFS).- 2.4 Coda.- 2.5 Extended File System (EFS).- 2.6 HARKYS.- 2.7 IBIS.- 2.8 Network File System (NFS).- 2.9 Remote File Sharing (RFS).- 2.10 S-/F-UNIX.- 2.11 Spritely NFS.- 2.12 VAXcluster.- 2.13 Xerox Distributed File System (XDFS).- 3 Object-Oriented Distributed File Systems.- 3.1 DOMAIN.- 3.2 Helix.- 3.3 SWALLOW.- 4 Traditional Distributed Operating Systems.- 4.1 Accent.- 4.2 Cambridge Distributed Computing System (CDCS).- 4.3 Charlotte.- 4.4 DEMOS/MP.- 4.5 DIOS.- 4.6 Distributed Academic Computing Networking OS (DACNOS).- 4.7 DUNE.- 4.8 DUNIX.- 4.9 Freedomnet.- 4.10 HERMIX.- 4.11 JASMIN.- 4.12 LOCUS.- 4.13 MACH.- 4.14 Multicomputer Operating System (MOS).- 4.15 Newcastle Connection.- 4.16 PULSE.- 4.17 QuickSilver.- 4.18 Research Oriented Distributed Operating System (RHODOS).- 4.19 Saguaro.- 4.20 Sprite.- 4.21 V.- 4.22 WANDA.- 4.23 Wisdom.- 5 Object-Oriented Distributed Operating Systems.- 5.1 Alpha.- 5.2 Amoeba.- 5.3 Argus.- 5.4 BirliX.- 5.5 Chorus.- 5.6 Clouds.- 5.7 Cronus.- 5.8 Cosmos.- 5.9 Eden.- 5.10 Gothic.- 5.11 Grenoble Universities Integrated Distributed Environment (Guide).- 5.12 Gutenberg.- 5.13 MARUTI.- 5.14 NEXUS.- 5.15 Process Execution And Communication Environment (PEACE).- 5.16 Profemo.- 5.17 Prospero.- 5.18 SOMIW Operating System (SOS).- 6 Closely Related Systems.- 6.1 Athena.- 6.2 Avalon.- 6.3 DAPHNE.- 6.4 DASH.- 6.5 Emerald.- 6.6 Enchère.- 6.7 Galaxy.- 6.8 Global, Active and Flexible File Environment Study (GAFFES).- 6.9 Grapevine.- 6.10 Heterogeneous Computer System (HCS).- 6.11 Incremental Architecture for Distributed Systems (INCAS).- 6.12ISIS.- 6.13 Medusa.- 6.14 Meglos.- 6.15 Mirage.- 6.16 Network Computing Architecture/System (NCA/NCS).- 6.17 Plan 9.- 6.18 Psyche.- 6.19 Server Message Block Protocol (SMB).- 6.20 Symunix.- 6.21 Synthesis.- 6.22 x-Kernel.- 7 Table of Comparison.- 8 Related Projects.- 8.1 Acorn.- 8.2 Agora.- 8.3 Amber.- 8.4 Arachne.- 8.5 Arca.- 8.6 Arcade.- 8.7 Archons (ArchOS).- 8.8 Argos.- 8.9 Arjuna.- 8.10 Boston Community Information System (BCIS).- 8.11 Camelot.- 8.12 Carnegie Mellon Central File System (CMCFS).- 8.13 Choices.- 8.14 Circus.- 8.15 Clearinghouse.- 8.16 Cocanet.- 8.17 Computing System for Societies of Agents (CSSA).- 8.18 CONIC.- 8.19 Customer Information Control System (CICS).- 8.20 Datacomputer.- 8.21 Deceit.- 8.22 DEMOS.- 8.23 DFS925.- 8.24 DISTRIX.- 8.25 Dragon Slayer.- 8.26 Echo.- 8.27 Encompass.- 8.28 Felix.- 8.29 Ficus.- 8.30 FileNet.- 8.31 Firefly.- 8.32 Generic File System (GFS).- 8.33 Helios.- 8.34 HERON.- 8.35 Intelligent Distributed Resource Processing System (IDRPS).- 8.36 Interim Füe System (IFS).- 8.37 Language for Distributed Systems (LADY).- 8.38 Lynx.- 8.39 Management of Distributed Systems (MANDIS).- 8.40 Melampus.- 8.41 Meta.- 8.42 MICROS.- 8.43 MODOS.- 8.44 Munin.- 8.45 Network Workstations (NEST).- 8.46 Networked Resource Discovery Project (NRDP).- 8.47 NonStop.- 8.48 Onyx.- 8.49 PHARROS.- 8.50 Presto.- 8.51 R?.- 8.52 Rapport.- 8.53 RNFS.- 8.54 Rochester's Intelligent Gateway (RIG).- 8.55 ROE.- 8.56 Roscoe.- 8.57 RSS.- 8.58 RT PC Distributed Services.- 8.59 S/Net's Linda Kernel.- 8.60 Sesame.- 8.61 StarOS.- 8.62 STORK.- 8.63 Thoth.- 8.64 TimixV2.- 8.65 Topaz (Taos).- 8.66 Transparent Integrated Local and Distributed Environment (TILDE).- 8.67 Transparent Remote Füe System (TRFS).- 8.68 Trollius (Trillium).- 8.69 Universal Poly-Processorwith Enhanced Reliability (UPPER).- 8.70 Woodstock File Server (WFS).- 8.71 Xcode.- 8.72 Z-Ring File Server. The book contains a comprehensive survey of distributed file and operating systems presently in existence or of historical interest. It is encyclopedic, i.e. each system is independently described according to a catalogue of criteria. It covers the major design issues of distributed systems and allows the reader to understand and compare the different approaches undertaken. Moreover it provides contact addresses and gives more than 600 references to the literature.