System Level Programming

Course Number 705101 | Wintersemester 2019/20

Content

The goal of this class is to introduce concepts, relevant for system-level programming. This includes deepening and strengthening your understanding of basic stuff—like pointers—or more basic stuff—like compiler errors—and getting in touch with things like semaphores, fork, malloc or POSIX.

The course topics include

  • Refresh and complement Linux Basics, Debugging and C/C++ know-how
  • Understand memory behavior of programs and fault-aware dynamic memory management
  • Interaction of threads and processes in C/C++ (POSIX, Fork, Exec, waitpid, pipes)
  • Synchronization of threads and processes (semaphores, mutexes, condition variables)
  • Memory Mapped I/O and shared memory (POSIX)

The learning experience in this course is hands-on.

Material

All the material for the course can be found here.

Administrative Information

This course currently is only a practical exercise (KU). Instead of a lecture you have to acquire the knowledge on your own (which is by itself a great exercise). The practicals are completed by submitting your results and defending your solutions in an oral exam.

Prerequisites

  • Basic knowledge of C/C++

These prerequisites are best fulfilled by taking the following courses beforehand:

  • Introduction to Structured Programming
  • Software Development Practical Exercises

Lecture Dates

Date Begin End Location Event Type Comment
2019/10/15 09:00 10:00 HS i13 Abhaltung VU fix/
2019/10/22 09:00 10:00 HS i13 Abhaltung VU fix/
2019/10/22 16:00 18:00 HS i13 Abhaltung VU fix/
2019/10/29 09:00 10:00 HS i13 Abhaltung VU fix/
2019/11/05 09:00 10:00 HS i13 Abhaltung VU fix/
2019/11/12 09:00 10:00 HS i13 Abhaltung VU fix/
2019/11/19 09:00 10:00 HS i13 Abhaltung VU fix/
2019/11/26 09:00 10:00 HS i13 Abhaltung VU fix/
2019/11/26 16:00 18:00 HS i13 Abhaltung VU fix/
2019/12/03 09:00 10:00 HS i13 Abhaltung VU fix/
2019/12/03 16:00 18:00 HS i13 Abhaltung VU fix/
2019/12/10 09:00 10:00 HS i13 Abhaltung VU fix/
2019/12/10 16:00 18:00 HS i13 Abhaltung VU fix/

Lecturers

Daniel Gruß
Daniel
Gruß

Assistant Professor

View more
Peter Lipp
Peter
Lipp

Group Leader

View more
Michael Schwarz
Michael
Schwarz

PhD Candidate

View more