KIT | KIT-Bibliothek | Impressum | Datenschutz

A Microkernel API for Fine-Grained Decomposition

Reichelt, Sebastian 1; Stoess, Jan 1; Bellosa, Frank 1
1 Karlsruher Institut für Technologie (KIT)

Abstract:

Microkernel-based operating systems typically require special attention to issues that otherwise arise only in distributed systems. The resulting extra code degrades performance and increases development effort, severely limiting decomposition granularity.
We present a new microkernel design that enables OS developers to decompose systems into very fine-grained servers. We avoid the typical obstacles by defining servers as lightweight, passive objects. We replace complex IPC mechanisms by a simple function-call approach, and our passive, module-like server model obviates the need to create threads in every server. Server code is compiled into small selfcontained files, which can be loaded into the same address space (for speed) or different address spaces (for safety).
For evaluation, we have developed a kernel according to our design, and a networking-capable multi-server system on top. Each driver is a separate server, and the networking stack is split into individual layers. Benchmarks on IA-32 hardware indicate promising results regarding server granularity and performance.


Volltext §
DOI: 10.5445/IR/1000026890
Zugehörige Institution(en) am KIT Fakultät für Informatik – Institut für Betriebs- und Dialogsysteme (IBDS)
Publikationstyp Proceedingsbeitrag
Publikationsjahr 2009
Sprache Englisch
Identifikator ISBN: 978-1-60558-844-5
urn:nbn:de:swb:90-268903
KITopen-ID: 1000026890
Erschienen in PLOS '09: Proceedings of the Fifth Workshop on Programming Languages and Operating Systems. Ed.: G. Muller
Veranstaltung 5th ACM SIGOPS Workshop on Programming Languages and Operating Systems (PLOS 2009), Big Sky, MT, USA, 11.10.2009
Verlag Association for Computing Machinery (ACM)
Seiten 1-5
Nachgewiesen in Scopus
Dimensions
KIT – Die Forschungsuniversität in der Helmholtz-Gemeinschaft
KITopen Landing Page