Experience with Grapevine: the growth of a distributed system
ACM Transactions on Computer Systems (TOCS)
RCS—a system for version control
Software—Practice & Experience
Andrew: a distributed personal computing environment
Communications of the ACM - The MIT Press scientific computation series
The LOCUS distributed system architecture
The LOCUS distributed system architecture
Scale and performance in a distributed file system
SOSP '87 Proceedings of the eleventh ACM Symposium on Operating systems principles
Using idle workstations in a shared computing environment
SOSP '87 Proceedings of the eleventh ACM Symposium on Operating systems principles
An overview of the Andrew message system
SIGCOMM '87 Proceedings of the ACM workshop on Frontiers in computer communications technology
The design and implementation of INGRES
ACM Transactions on Database Systems (TODS)
A trace-driven analysis of the UNIX 4.2 BSD file system
Proceedings of the tenth ACM symposium on Operating systems principles
A caching file system for a programmer's workstation
Proceedings of the tenth ACM symposium on Operating systems principles
The ITC distributed file system: principles and design
Proceedings of the tenth ACM symposium on Operating systems principles
The LOCUS distributed operating system
SOSP '83 Proceedings of the ninth ACM symposium on Operating systems principles
The distributed V kernel and its performance for diskless workstations
SOSP '83 Proceedings of the ninth ACM symposium on Operating systems principles
Disconnected operation in the Coda file system
SOSP '91 Proceedings of the thirteenth ACM symposium on Operating systems principles
Disconnected operation in the Coda File System
ACM Transactions on Computer Systems (TOCS)
Hi-index | 0.00 |
Scale should be recognized as a primary factor influencing the architecture and implementation of distributed systems. This paper uses Andrew, a distributed environment at Carnegie Mellon University, to validate this proposition. The design of Andrew is dominated by considerations of performance, operability and security. Caching of information and placing trust in as few machines as possible emerge as two general principles that enhance scalability. The separation of concerns made possible by specialized mechanisms is also valuable. Heterogeneity is a natural consequence of growth and anticipating it in the initial stages of system design is important. A location transparent shared file system considerably enhances the usability of a distributed environment.