System Level Programming (WS 2021/22)

Course Number 705004 | Wintersemester 2021/22

Content

Debugging, C and C++, memory behavior of programs, fault-aware dynamic memory management, threads and processes in C / C++ (POSIX pthreads, fork, exec, waitpid, pipes), synchronization of threads and processes in C / C++ (using semaphores, mutexes, condition variables, and spinlocks), memory mapped I/O and shared memory.

Administrative Information

Previous Knowledge

Basic knowledge of, and basic experience in, C and C++ (ESP, SEP)

Prerequisites Curriculum

See position in the curriculum

Objective

This course builds on the basic programming courses in year 1. After having attended this module, students have a good knowledge of programming in C and C++ and are ably to use system-level APIs like the POSIX API. They acquire a systematic knowledge of synchronization primitives and are able to effectively use system calls for multithreading, synchronization, and inter-process communication.

Language

English

Teaching Method

How to get a grade

Programming Exercises, Oral Exercise Interviews (possibly virtual), and Written or Oral Exam (possibly virtual)

Registration

See https://www.iaik.tugraz.at/slp https://online.tugraz.at/tug_online/sa.gruppen_einteilung?clvnr=263141&corg=983

Lecture Dates

Date Begin End Location Event Type Comment
2021/10/01 16:30 18:30 HS i13 Abhaltung VU fix/
2021/10/05 09:00 10:00 HS i13 Abhaltung VU fix/
2021/10/08 15:00 17:00 HS i13 Abhaltung VU fix/
2021/10/15 15:00 17:00 HS i13 Abhaltung VU fix/
2021/10/22 15:00 17:00 HS i13 Abhaltung VU fix/
2021/10/29 15:00 17:00 HS i13 Abhaltung VU fix/
2021/11/05 15:00 17:00 HS i13 Abhaltung VU fix/
2021/11/12 15:00 17:00 HS i13 Abhaltung VU fix/
2021/11/19 15:00 17:00 HS i13 Abhaltung VU fix/

Lecturers

Daniel Gruß
Daniel
Gruß

Assistant Professor

View more
Claudio Alberto Canella
Claudio Alberto
Canella

PhD Candidate

View more