L4 Based Operating Systems
- L4Linux is a port of Linux to the L4 µ-kernel.
L4Linux runs as an L4 server in user-mode, side-by-side with other
L4 applications (e.g. real-time components). It is currently running on
x86 and ARM and it is binary compatible with the native Linux
- Mungi Single-Address-Space OS
- A single address space operating system (SASOS) on top of
L4. The goal of the project is to show that a SASOS can work on
standard hardware, can be made as secure as traditional systems, is
not inherently less efficient that traditional systems, and that for
some classes of important applications it delivers performance
advantages over traditional systems.
Iguana is designed as a base for the provision of operating system
(OS) services on top of the L4 microkernel, presently the Version 4
API as implemented by L4Ka::Pistachio, and we are observing ongoing
developments of a security-enhanced L4 API; Iguana's design is meant
to be easily adapted to new APIs. It provides the underlying OS for
Wombat, our port of Linux to L4.
Iguana borrows many ideas from the Mungi operating system,
however it is designed, primarily, for use in embedded
systems. The implications of this are:
- Iguana complements, rather than hides the underlying L4
API. It provides services virtually every OS environment requires,
such as memory and protection management, and a device driver
- the memory and cache footprints of Iguana are kept small;
- low-overhead sharing of data is supported;
- Iguana attempts to provide the best possible performance on
typical embedded processors. In particular, it supports the
separation of protection and translation that is a feature of some
embedded processors, such as ARM cores, by encouraging a
non-overlapping address-space layout.
- Wombat is a port of Linux 2.6 to run on top of the Iguana L4
based operating system. It is aimed at embedded systems and designed
to be cross-platform, currently running on IA32, ARM and
MIPS64. Unlike some other Linux ports, it uses the native Linux
scheduler to determine scheduling policy of Linux applications.
- The DROPS project aims at supporting applications with Quality
of Service requirements. L4Linux is used for servicing standard
Linux applications. Specific real-time applications are served by a
set of real-time components running on top of L4.
- Security critical applications like electronic signatures,
online banking, or e-government do not only need secure
cryptography, but also a trustworthy platform that reliably
separates different applications from each other and that comes
with a user interface that ensures that Trojan horses cannot
intercept the user authorization (e.g., a passphrase). PERSEUS is
an open-source project that shows that this can be achieved with
much less programming effort and more flexibility than typically
- The L4-Hurd project aims to port the current
multiserver operating system and use the advantages of L4's fast
IPC and slimness. Furthermore, this project could make HURD
independend of MACH.
- L4minix is an experimental/etude porting of Minix on the L4Ka
micro kernel for future extension.
- E1 Distributed
- E1 is a distributed operating system project based on the
concepts of object replication, component model support, and
persistence. To provide applications with transparent access to all
resources of the computer network, state and functionality of
operating syste components and application software are encapsulated
by distributed objects.