The structure of a type safe operating system

Language
en
Document Type
Doctoral Thesis
Issue Date
2004-07-12
Issue Year
2002
Authors
Golm, Michael
Editor
Abstract

The architecture of traditional operating systems relies on address-based memory protection. To achieve flexibility at a low cost operating system research has recently started to explore alternative protection mechanisms, such as type safety. This dissertation presents an operating system architecture that completely replaces address-based protection with type-based protection. Replacing such an essential part of the system leads to a novel operating system architecture with improved robustness, reusability, configurability, scalability, and security. The dissertation describes not only the design of such a system but also its prototype implementation and the performance of initial applications, such as a file system, a web server, a data base management system, and a network file server. The prototype, which is called JX, uses Java bytecode as its type-safe instruction set and is able to run existing Java programs without modifications. The system is based on a modular microkernel, which is the only part of the system that is written in an unsafe language. Light-weight protection domains replace the heavy-weight process concept of traditional systems. These domains are the unit of protection, resource management, and termination. Code is organized in components that are loaded into domains. The portal mechanism-a fast inter-domain communication mechanism-allows mutually distrusting domains to cooperate in a secure way. This dissertation shows that it is possible to build a complete and efficient general-purpose time-sharing operating system based on type safety.

Abstract

Die Architektur herkömmlicher Betriebssysteme baut auf adressbasiertem Speicherschutz auf. Um Flexibilität mit niedrigen Kosten zu verbinden, ist die aktuelle Betriebssystemforschung dazu übergegangen, andere Schutzmechanismen zu untersuchen, unter anderem Typsicherheit. Diese Dissertation beschreibt eine Betriebssystemarchitektur, die den adressbasierten Schutz vollständig durch einen typbasierten Schutz ersetzt. Der Austausch eines so zentralen Bestandteils des Betriebssystems führt zu einer neuartigen Betriebssystemarchitektur, welche sich durch verbesserte Robustheit, Wiederverwendbarkeit, Konfigurierbarkeit, Skalierbarkeit und Sicherheit auszeichnet. Die Dissertation beschreibt nicht nur das Design dieses Systems, sondern auch die Implementierung eines Prototyps und die Performanz erster Anwendungen, wie Dateisystem, Webserver, Datenbanksystem und Netzwerk-Dateiserver. Der JX genannte Prototyp verwendet Java Bytecode als typsicheren Instruktionssatz. JX ist in der Lage, existierende Java-Programme ohne Änderungen auszuführen. Das System basiert auf einem modularen Mikrokern. Dieser Mikrokern ist der einzige Teil des Systems, der in einer unsicheren Sprache geschrieben ist. Leichtgewichtige Schutz-Domänen ersetzen das schwergewichtige Prozesskonzept herkömmlicher Betriebssysteme. Schutz, Ressourcenverwaltung und Terminierung sind an diese Domänen gekoppelt. Der Programmcode ist in Komponenten organisiert, welche in die Domänen geladen werden. Der Portalmechanismus - ein schneller Inter-Domän-Kommunikationsmechanismus - erlaubt es gegenseitig misstrauenden Domänen sicher zu kooperieren. Die Dissertation zeigt, dass es möglich ist, ein universelles und effizientes Mehrbenutzer-Betriebssystem auf Typsicherheit aufzubauen.

DOI
Document's Licence
Faculties & Collections
Zugehörige ORCIDs