The Styx (R) architecture for distributed systems

Citation
R. Pike et Dm. Ritchie, The Styx (R) architecture for distributed systems, BELL LABS T, 4(2), 1999, pp. 146-152
Citations number
14
Categorie Soggetti
Information Tecnology & Communication Systems
Journal title
BELL LABS TECHNICAL JOURNAL
ISSN journal
10897089 → ACNP
Volume
4
Issue
2
Year of publication
1999
Pages
146 - 152
Database
ISI
SICI code
1089-7089(199904/06)4:2<146:TS(AFD>2.0.ZU;2-8
Abstract
A distributed system is constructed from a set of relatively independent co mponents that form a unified but geographically and functionally diverse en tity. Examples include networked operating systems, Internet services, the national telephone switching system, and, in general, all the technology us ing today's diverse digital networks. Nevertheless, distributed systems rem ain difficult to design, build, and maintain, primarily due to the lack of a clean, perspicuous interconnection model for the components. Our experien ce with two distributed operating systems, Plan 9(R) and Infernos, encourag es us to propose such a model. These systems depend on, advocate, and gener ally push to the limit a fruitful idea-to present their resources as files in a hierarchical name space. The objects appearing as files may represent stored data, but they may also be devices, dynamic information sources, int erfaces to services, and control points. The approach unifies and provides basic naming, structuring, and access control mechanisms for all system res ources. A simple underlying network protocol, Styx(R), forms the core of th e architecture by presenting a common language for communication within the system. Even within nondistributed systems, the presentation of services a s files advantageously extends a familiar scheme for naming, classifying, a nd connecting to system resources, More important, the approach provides a natural way to build distributed systems by using well-known technology for attaching remote file systems. If resources are represented as files and t here are remote file systems, one has a distributed system-resources availa ble in one place are usable from another.