System Design and Implementation

  • Type: Lecture
  • Chair: System Architecture Group
  • Semester: ST 2013
  • Time:

    Tuesday, 11:30-13:00, SR 131, Bldg. 50.34

  • Start: Thursday, April 18, 15:45, SR 131, Geb. 50.34
  • Lecturer:

    Prof. Dr. Frank Bellosa, Marius Hillenbrand, Jens Kehne

  • SWS: 2
  • ECTS: 3
  • Lv-No.: 24616


During this hands-on course small teams (2-3) of students design and build their own little multi-server operating systems on top of the L4Ka::Pistachio microkernel. Among the goals is to gain practical experience in the design and implementation of a large software project within a team.

SDI lecture focuses on different "building blocks" of operating systems (e.g., communication, multi-tasking/-processing, virtual memory management, file services) and presents examples and case-studies found in contemporary operating systems. It is (mandatorily) combined with the SDI lab (registration required), which gives the students the opportunity to design (and later implement), team wise, their own little multi-server operating system on top of the L4Ka::Pistachio microkernel. Once we have introduced build environment, tools, and example code, we will focus on incorporating the building blocks from lecture into our to-be-designed OS, and have each team present their own design ideas for one particular aspect. Subsequent lab slots are reserved for implementation.


You attended the lecture System Architecture; so you should have a good understanding of OS concepts. Having attended the lecture Microkernel Construction is certainly helpful, but the initial L4 crash course will be enough to get you started. However, attending Microkernel Construction is recommended to understand the details of in-kernel Whys and Hows. During the course you will write C or C++ code. Basic programming skills in C, C++, or Java are sufficient as prerequisite, however.

Lecture Slides