System-Level Programming

  • 27.05.2024: Due to the public holiday "Fronleichnam", the upcoming lecture on Thursday (May 30th) is canceled.
  • 06.05.2024: Due to the public holiday "Christi Himmelfahrt", the upcoming lecture on Thursday (May 9th) is canceled.
  • 18.04.2024: The registration for the soldering night will open today at 18:00 via the Waffel system.
  • 18.04.2024: The registration for the exercises will open today at 18:00 via the Waffel system.
  • 17.04.2024: The first lecture will take place tomorrow, 18. April. Because of several canceled dates due to public holidays, there will be an one-time additional date for the lecture in the 0.031-113 seminar room on 19. April at 10:15 a.m.
  • 21.02.2024: Initial version of the website is online.

Content of the Lecture

Based on the computer science knowledge from Algorithms, Programming, and Data Representation and first programming experience with the Python programming language, the lecture aims to impart basic knowledge of system-level programming (SLP). Further information about the lecture. Further information about the lecture

Exercises

A more detailed description can be found at the exercise page, including the exercise dates and tasks with the corresponding slides.

Script

For the lecture, no script as such will be provided, but the presented slides are available. They can (and shall) not replace supplementary lecture notes and full description of the topics in the technical literature

Lecturer and Tutors

Timetable

  Mo Tu We Th Fr
08:00   Tutorial Exercise      
10:00          
12:00          
14:00       Lecture  
16:00        

Detailed Schedule

The following table contains the preliminary exercise schedule throughout the semester. The time of publication and its processing duration of the individual exercises are marked in alternating colors with green and orange bars. The latest time of submission is denoted on each task sheet.
CW Mo Tu We Th Fr Themen
16 15.04. 16.04. 17.04. 18.04. 19.04. Introduction, Organisation of the Lecture, Java/Python vs. C – Some Examples Software Layers and Abstraction, Language Overview, Basic Data Types
      LEC1 LEC2
         
17 22.04. 23.04. 24.04. 25.04. 26.04. Operations and Expressions, Control Structures, Functions, Variables E1 (blink)
      LEC3  
E1        
18 29.04. 30.04. 01.05. 02.05. 03.05. Preprocessor, Program Structure and Modules, Pointers and Arrays E2 (snake)
    Tag der Arbeit LEC4  
E2      
19 06.05. 07.05. 08.05. 09.05. 10.05. E3 (led-modul)
      Christi Himmelfahrt  
E3      
20 13.05. 14.05. 15.05. 16.05. 17.05. Pointers and Arrays, Composite Data Types, µC-System Architecture – Preface, µC-System Architecture – Processor, µC-System Architecture – Periphery
      LEC5  
         
21 20.05. 21.05. 22.05. 23.05. 24.05. Interrupts, Interrupts – Example, Interrupts – Concurrency
Pfingstmontag Bergdienstag   LEC6  
     
22 27.05. 28.05. 29.05. 30.05. 31.05. E4 (spiel)
      Fronleichnam No Lectures
E4    
23 03.06. 04.06. 05.06. 06.06. 07.06. Dynamic Allocation of Memory, Organisation of Memory, Organisation of Memory – Stack, Organisation of Memory – Summary E5 (ampel)
      LEC7  
E5        
24 10.06. 11.06. 12.06. 13.06. 14.06. Additions: Pointers, Additions – In-/Output, Additions – Error Handling, Operating Systems
      LEC8  
         
25 17.06. 18.06. 19.06. 20.06. 21.06. File Systems – Introduction, File Systems – UNIX E6 (concat)
      LEC9  
E6        
26 24.06. 25.06. 26.06. 27.06. 28.06. Programs and Processes, Programs and Processes – UNIX, Signals E7 (printdir)
      LEC10  
E7        
27 01.07. 02.07. 03.07. 04.07. 05.07. E8 (mish)
      No Lecture  
E8        
28 08.07. 09.07. 10.07. 11.07. 12.07. Multi Processors, Concurrent Threads, Concurrent Threads – praxis Exam Preparation
      LEC11  
         
29 15.07. 16.07. 17.07. 18.07. 19.07. Question & Answer
      Q&A  
         

Content-related questions (Lecturer & Tutorial mentors):

Organizational questions (Lecturer)