Advanced Seminar
Responsible | Sandy Seifarth-Haupold |
Module | DSE-14-E13, DSE-E13, INF-04-HS, INF-AQUA, INF-D-940, INF-DSE-20-E-BDSE, MINF-04-HS |
Scope and Type |
2 SWS exercise |
Cycle | Year round |
This is where suggestions for topics for student lectures at the EZAG are collected.
The EZAG also serves as a platform for the advanced seminar, so there are no special dates for advanced seminar presentations. In order to give a lecture as a student in the advanced seminar, you should either choose a topic from the list on this page or suggest a topic yourself. Afterwards you should contact the supervisor of the chosen topic or me (if you have your own topic) to determine the further course of events and a date for the lecture.
In addition to the advanced seminar presentation, an elaboration is necessary. The exact content should be discussed with the supervisor after the presentation. The elaboration should not exceed 10 pages and should be handed in to the supervisor at most 4 weeks after the advanced seminar presentation. Presentaion and elaboration are necessary to get a certificate. General information on the structure of scientific papers can be found in the section "Thesis/Diploma Structure". The basic structure should be adapted as follows: Introduction, Problem, Related Work (1 page), Core Idea, Details of an aspect, Assessment, Summary. Note: The paper should be written as continuous text (no collection of headwords !), the Duden or spell checker is strongly recommended, page numbering is also desired.
The audience of advanced seminar presentations consists of advanced students and staff. It may be useful to make some references to the OS lecture in the presentation, furthermore basic concepts should be treated as known and the introduction to the lecture can usually be compact. The focus should be on an interesting scientific topic, so that everyone can learn something.
The presentation itself should be designed for a duration of about 30 minutes, unless otherwise agreed upon. Afterwards there are usually 15 minutes for questions. It is advisable to practice the presentation before, so that you can better estimate your own speed.
For registration as the INF-AQUA module in selma, first, a registration in the INF-AQUA module must be made, then a registration for the advanced seminar must be made, and finally, a registration for the advanced seminar exam can be made.
Suggestions For Topic
ROS 2 and microROS
The Robot Operating System (ROS) is a framework for programming robots. Programs consist of a large number of interacting components, for which an extensive kit of ready-made components is provided. The current version ROS 2 is advertised as real-time capable and thus it is possible to use ROS 2 in safety-critical environments.
The aim of the presentation is on the one hand to present the architecture of ROS 2 and to address the interaction of the components and the real-time properties. On the other hand, alternative implementations such as micro-ROS can also be discussed comparatively, especially their use in embedded environments such as microcontrollers or minimal operating systems.
Resources:
Supervisor: Michael Roitzsch
Advanced Aspects of Linux
The Linux kernel is a complex codebase that features numerous specialised constructs. Its open-source nature allows for continuous refinement and innovation in system design. On the downside, this makes it hard to keep up with the ever-evolving code.
In this overarching topic you will select, research, and present one specialised Linux feature. Some examples are listed below but you are also invited to propose your own.
- Data Structures, e.g. Maple trees
- Memory Allocators (SLAB, SLOB, SLUB)
- Scheduling Algorithms, e.g. CFS (completely fair scheduler)
- Synchronisation, e.g. RCU (read-copy-update)
- Specialised User-space APIs, e.g. io_uring, eBPF
- Sub System, e.g. Crypto API, device mapper, work queues
Quellenvorschläge:
- The Linux Kernel Archives
- The Linux Kernel documentation
- What is RCU, Fundamentally?, Read-copy update: Using Execution History to Solve Concurrency Problems
- The Slab Allocator in the Linux kernel
- Ringing in a new asynchronous I/O API, The rapid growth of io_uring
- eBPF Documentation, BPF Internals
- The Device Mapper, dmsetup
Betreuer: Jan Bierbaum