- Szyperski C. A. Insight ETHOS: On Object-Orientation in Operating Systems (pdf копия), A dissertation submitted to the SWISS FEDERAL INSTITUTE OF TECHNOLOGY (ETH) ZÜRICH for the degree of Doctor of Technical Sciences, 1992
Ethos: The characteristic spirit, prevalenttone of sentiment, of a people or community; the «genius» of an institution or system. (Aristoteles — Rhetorics ii. xii-xiv)
Ethos is both, an Elaborate Thesis on Operating Systems and an Ephemeral Thesis Operating System: It is the name of a project aiming at design principles of Object-Oriented Operating Systems, as well as the name of an actual implementation used as a case study to validate the found design principles. This thesis covers the Ethos project and system.
Results of the Ethos project are generalizations of design principles for object-oriented systems, namely the Carrier/Rider Separation, and the Directory Object concept. The former aims at a widely applicable scheme for separating data management from data access tasks. The latter generalizes the notion of prototype objects to manage integration of extensions into the running system. Another result of the Ethos project is the introduction of a flyweight preemption concept called engines, with the key attribute that engines may share a single stack.
The Ethos system is an evolutionary successor of the Oberon system, and is implemented using the language Oberon-2. The Ethos system is based on a strongly typed hierarchy of abstractions. Each abstraction has a default implementation, but multiple implementations of the same abstraction may be used simultaneously. As the extensibility of Ethos goes down to the very machine level, Ethos is well suited to prototype new operating system services.
Ethos contains a finalizing garbage collector with integrated support for identity directories, a facility for dynamic integration of modules into the running system, and a framework for developing extensions. The document editor Write has evolved as part of the Ethos system and is used as the primary medium for user activities. (Write has also been used to prepare this thesis.) A refined version of the Oberon user interface is provided in the standard setting. »