Exercises

Exercise Content

The exercises include tutorial and computer exercises. Tutorial exercises will deepen and complement the lectures contents. Additional programming tasks facilitate practical experience on system-level programming. In the computer exercises, workstations in the computer room are reserved for SLP/SPiC students, whereby a supervisor will generally be available to provide assistance if required. In these exercises, system-level programming is practiced in two ways: On the one hand in the form of programming the hardware of an AVR microcontroller directly, on the other hand by reimplementing some common Linux system tools.

Exercise Slides

Nr. Topic Week Slides Materials
1 Orga, IDE, Optimizations, Exercise 1 22.04.2024 1x1, 1x2, 2x2
2 Data Types, Visibility, Bitoperations, Modulo, Polling, Exercise 2 29.04.2024 1x1, 1x2, 2x2
3 Moduls, I/O Ports, Register, Exercise 3 06.05.2024 1x1, 1x2, 2x2
4 Additions Pointers, Hands-On (Pointers) 13.05.2024 1x1, 1x2, 2x2 pointer.c
5 (canceled) 20.05.2024
6 Interrupts, Synchronization, Power-Saving Modes, Exercise 4 27.05.2024 1x1, 1x2, 2x2
7 Timer, Exercise 5, Hands-on (Coffee Machine) 03.06.2024 1x1, 1x2, 2x2
8 Hands-on (Coffee Machine), Hands-on (Ticker) 10.06.2024 1x1, 1x2, 2x2
9 Linux Programming, Error Handling, Command-Line Arguments, Strings, Exercise 6, Buffer Overflow 17.06.2024 1x1, 1x2, 2x2
10 Filesystems, Exercise 7 24.06.2024 1x1, 1x2, 2x2
11 Processes, Exercise 8 (Teil a)) 01.07.2024 1x1, 1x2, 2x2 mish_vorlage.c
11 Signals, Exercise 8 (Teil b) und c)) 08.07.2024 1x1, 1x2, 2x2
12 Exam Preparation 15.07.2024 1x1, 1x2, 2x2 mock_exam.pdf, mock_exam_man.pdf, mock_exam_solution.pdf

Assignments

Nr. Topic Description Date Processing Time (in days) Group Submission Submission Points
1 blink Getting started, Implementation of a LED-Blink-Programm 22.04.2024 7 No blink.c 3
2 snake C Control Structures, Functions, SPiCboard-Components, Bitoperations 29.04.2024 7 Yes snake.c 12
3 led-modul Pointers, AVR I/O-Ports, Modules 06.05.2024 14 Yes led.c, led-test.c 14
4 spiel Interrupts, Power-Saving Modes, Concurrency, Synchronization, volatile 27.05.2024 7 Yes spiel.c 12
5 ampel Interrupts, Power-Saving Modes, Concurrency, Synchronization, volatile 03.06.2024 14 Yes ampel.c 15
6 concat C under Linux, Memory Allocations, Strings 17.06.2024 7 No concat.c 10
7 printdir POSIX, Structs 24.06.2024 7 Yes printdir.c 12
8 mish POSIX-Processes, Signals 01.07.2024 14 Yes mish.c 22