Sie sind hier: Startseite Lehre Abschlussarbeiten


Aufgrund der Nähe zum Rechenzentrum kann der Lehrstuhl für Kommunikationssysteme ein breites Spektrum an Themen anbieten. Ziel ist es, dass jede(r) möglichst ein Thema bearbeiten kann, welches den eigenen Interessen nahe kommt.

Die Reihenfolge der hier Angebotenen Arbeiten entspricht nicht unbedingt unseren Präferenzen oder der Dringlichkeit unseres Interesses. Sie werden sukzessive nach Idee hintereinander eingeordnet. Deshalb ist die Zahl der angebotenen Arbeiten weit höher als die Zahl der Studierenden, die wir zu einem gegebenen Zeitpunkt in der von uns erwarteten Qualität betreuen können. Aus diesen Gründen spiegelt diese Liste auch nicht immer unsere freien Kapazitäten wider! (Hier müssen wir auch dringend auf die Konkurrenz verweisen!)


Documenting the PXE boot process wrt the iPXE environment

Freely accessible, detailed technical information about the PXE environment is not readily available on the internet. The goal of this (bachelor's/master's) thesis is to document the boot process to give a good understanding of the different stages of a boot process from BIOS/UEFI handover to the PXE stack, loading the NBP, chaining to other PXE binaries, and finally booting an OS (Linux). Emphasis should be put on the memory management at different stages, and how it affects available memory of the OS.

This thesis should aim to document the technical details of a boot process via network. An incomplete list of interesting aspects to research would be:

  • Which mode does the CPU run in at different points during the process
  • Where in memory are things located, what can and cannot be freed
  • iPXE: How does chaining affect memory usage, what is leaking, what can be reclaimed
  • How safe is it to chain from iPXE to e.g. pxelinux and back, what's happening under the hood
  • How to debug broken BIOS/UEFI implementations regarding memory corruption, hangs etc.


A good understanding of the x86 architecture is highly recommended for taking on this task. Since existing documentation is scarce, research will probably mostly rely on reading existing source code (iPXE, PXELINUX), so some C skills will also be helpful.


Simon Rettberg


Linux device mapper target for reading qcow2 images

While current solutions for accessing qcow2 image containers are flexible and mature, they can lead to added complexity when used in low level or rootfs contexts, due to requiring user space tools for translation. The goal is to create an in-kernel solution for reading qcow2 image containers.
Implementing read only access is sufficient, but reading compressed images should be supported as well. The device mapper seems to be a fitting base due to its modularity, but other ways of achieving the required functionality could be explored. Pros and cons compared to traditional approaches (xmount, qemu-nbd) should be evaluated, like possible speed gains, safety regarding malformed containers, restrictions due to working in kernel context etc.


Simon Rettberg