System Programming Concepts

Module Code
Module Coordinators
Hellwig Geisse
Hellwig Geisse
Short Description
Using C as programming language, a virtual machine for an OOP language is implemented, as an example of synthesizing higher-level abstractions from lower-level system services.
Learning Objectives

Students have the basic knowledge to develop low-level systems. They know how concepts of modern programming languages are realized on the base of the operating system. They can estimate the effort associated with such solutions, and they are able to develop machine-oriented software.

  • Programming in C
  • Memory management, runtime organization
  • Libraries
  • Compiler, assembler, linker, loader
  • Garbage collection
  • Interpreter, virtual machines
Duration in Semester
Instruction Language
Total Effort
6 CrP; an estimated 180 hours, of which approximately 60 are spent in class.
Weekly School Hours
Method of Instruction

Lecture 2 SWS, practical course 2 SWS

Requirements for the awarding of Credit Points

Examination prerequisite: 2 certified written exercises,

Examination: Written exam

Evaluation Standard
according to examination regulations (§ 9)
  • B. Kernighan, D. Ritchie: The C Programming Language Prentice Hall
  • R. Jones, R. Lins: Garbage Collection John Wiley & Sons
  • J. Smith, R. Nair: Virtual Machines Morgan Kaufmann