This website is no longer updated.

As of 1.10.2022, the Faculty of Physics has been merged into the TUM School of Natural Sciences with the website https://www.nat.tum.de/. For more information read Conversion of Websites.

de | en

Praktikum: Advanced Systems Programming in C/Rust (IN0012, IN2106, IN2128)

Course 0000005974 in SS 2021

General Data

Course Type practical training
Semester Weekly Hours 6 SWS
Organisational Unit Informatics 1 - Chair of Engineering Software for Decentralized Systems (Prof. Bhatotia)
Lecturers Maurice Bailleu
Pramod Bhatotia
Dimitrios Stavrakakis
Jörg Thalheim
Dates Thu, 16:00–18:00, virtuell

Assignment to Modules

Further Information

Courses are together with exams the building blocks for modules. Please keep in mind that information on the contents, learning outcomes and, especially examination conditions are given on the module level only – see section "Assignment to Modules" above.

additional remarks This course covers some of the most important aspects of systems’ programming. More specifically, we will cover the following topics through a set of programming assignments over the semester: - Kernel and system calls: How programs interact with the operating system, how to implement some system calls yourself in assembly - File I/O: Learn about file descriptors, direct i/o, memory mapped i/o, page cache etc. - Concurrency and synchronization: Learn about different threading primitives, i.e., mutexes, concurrent data structure design and how they are implemented - Memory management: Virtual memory, heap, stack and how malloc() works - Processes: Different system calls related to process handling like fork(), execve(), wait() - Sockets: Different socket types, efficient ways to implement servers (io_uring) - Performance profiling: Full system profiling with modern tools based on epbf and flamegraphs - Virtualization: Hypervisors (KVM), containers, cgroups
Links Course documents
Additional information
Additional event
TUMonline entry

Equivalent Courses (e. g. in other semesters)

SemesterTitleLecturersDates
WS 2023/4 Praktikum: Systems Programming (IN0012, IN2106, IN2128) Bhatotia, P. Chen, J. Giortamis, E. Meignan--Masson, I. Okelmann, P. … (total 7)
SS 2023 Praktikum: Advanced Systems Programming in C/Rust (IN0012, IN2106, IN2128) Bhatotia, P. Chen, J. Mainas, C. Misono, M. Reimers, S. … (total 6) Thu, 15:00–16:00, virtuell
and singular or moved dates
WS 2021/2 Praktikum: Advanced Systems Programming in C/Rust (IN0012, IN2106, IN2128) Stavrakakis, D.
Responsible/Coordination: Bhatotia, P.
Thu, 16:00–18:00, virtuell
and singular or moved dates
Top of page