There are several ways to achieve Unix emulation, but for the sake of
having access to a Unix environment as soon as possible (which would
also have the advantage of replacing the somewhat ,,esoteric'' L3
development environment), we have been considering porting an existing
Unix single server from another microkernel to L3.
1.1.2 Which Single Server Project Should We Start With?
We ultimately want to make our results available as free software. Hence, only free, ,,unencumbered'' systems are considered. We have been looking at:
We have been focusing on Lites for several reasons: It was the
first single server system we were able to install, it can run an
existing Unix base system (e.g. NetBSD) almost without any
modification, and it seems to be relatively well-supported.
1.2 How To Tackle the Project?
In this reoprt, we will first compare Mach with L3. Later, we will investigate how Lites has been implemented on Mach. We will identify common and different designs employed in these microkernels.
Beginning with this analysis, we will try to develop a strategy for
porting Lites to L3: Which Mach facilities should be emulated? Which
parts of the Lites kernel should be rewritten or changed?
1.3 Typographic Conventions Used in This Document
Throughout this document, certain typographic conventions will be used:
Emphasized text will be used to introduce new concepts.
Typewriter font marks program code.
This special font will be used to emphasize C function names
and type class names. Variable and object names will be written in
normal font, however.
We would like to thank Prof. Hermann Härtig and the real-time operating systems group at TU Dresden for their support, Jochen Liedtke from GMD for useful dicussions, Bryan Ford from Utah University for his advice, and Jean Wolter for proof-reading this document.