TUD Logo

TUD Home » ... » Operating Systems » Teaching » Microkernel-Based Operating Systems

Operating Systems

Microkernel-Based Operating Systems


This lecture is going to introduce various aspects and concepts regarding the construction and implementation of microkernel-based operating system. In the first part, we introduce fundamental mechanisms that are required for efficient construction of an operating system on top of a microkernel. In the second part of the lecture, we show you real systems that have been built using these concepts. While strongly focussing on the microkernel work done at TU Dresden, we also take a look at alternatives.

Having attended the lecture on microkernel construction might help you to understand some concepts easier, but it is not necessary. In fact, we recommend to attend this lecture here first.

In addition to the lecture, we also have a practical course in which you will built parts of an operating system on top of a L4 microkernel in a group of 2-4 students. You are encouraged to take this practical course, too.

The lecture will cover the following aspects:
  • The TU Dresden Operating System (TUD:OS)
  • Basic services provided by the L4 Runtime Environment (L4Re)
  • Resource Management and Real-Time
  • Virtualization concepts, especially para-virtualizing Linux (L4Linux)
  • Building secure systems
  • Reusing commodity software in a microkernel environment


  1. Introduction
  2. Inter-Process Communication
  3. Threads
  4. Memory
  5. Real-Time
  6. Device Drivers
  7. Resource Management
  8. Scalability and Heterogeneity
  9. Legacy Reuse
  10. Virtualization
  11. Security
  12. Trusted Computing
  13. Operating Systems vs. Fault Tolerance


We will have two types of exercises. Practical exercises give you the opportunity to get hands-on experience using the software presented during the lecture. Paper Reading exercises let you practice reading scientific papers and shall inspire discussion on research ideas. All topics covered during the exercises may be content of your exam.

Practical Exercises

1 November 2016, room APB E046
Getting Started
15 November 2016, room APB E046
Inter-process Communication (solution)
24 January 2017, room APB E008
Hardware devices, drivers, and L4Linux: Source, Docs

Paper Reading

In preparation for these exercises you are required to read the paper to be presented in the exercise. Prepare at least three questions regarding topics of the paper. These may cover things you don't understand as well as arguments you do not believe in or ideas that arose from your reading. You will be expected to sum up the paper during the exercise as well as discuss your questions.

18 October 2016
Per Brinch Hansen: "The Nucleus of a Multiprogramming System"
6 December 2016
Galen Hunt et al.: Singularity: Rethinking the Software Stack
20 December 2016
Donald E. Porter et al.: Rethinking the library OS from the top down
17 January 2017
Bryan Ford, Mike Hibler, Jay Lepreau, Patrick Tullmann, Godmar Back, Stephen Clawson: Microkernels meet Recursive Virtual Machines
Last modified: 10th Feb 2017, 2.55 PM
Author: Dr.-Ing. Carsten Weinhold

Carsten Weinhold

Phone: 463 38056
Fax: 463 38284
e-mail contact form

  • ModuleModules: INF-BAS4, INF-VERT4, DSE-E8
  • Credits6 Credit Points
  • 2/1/0 = 3 SWS
Time and Place
  • Lecture, weekly
    TimeTue, 4.40 PM PlaceAPB E001
  • Exercise, in odd-numbered weeks
    TimeTue, 2.50 PM PlaceAPB E008
Mailing List