Programming 1, Programming 2 (in the same semester), and Mathematics for Computer Scientists 1 or comparable courses in mathematics are recommended.
The course consists of two parts, which each have to be passed individually in order pass the course as a whole.
In the projects part, students have to independently implement a series of projects. These projects deepen the practical comprehension of the lecture material in the areas of computer architecture and operating systems.
In the lecture part, students must pass the written exams and work on written assignments and/or quizzes. Successful completion of the written assignments and/or the quizzes is a prerequisite for participation in the written exams.
Will be determined based on the performance in exams, exercises, and projects. The exact modalities will be announced at the beginning of the module.
4 h lectures
+ 2 h tutorial
= 6 h (weekly)
90 h of classes
+ 180 h private study
= 270 h (= 9 ECTS)
Students shall understand the functionality and the most important properties of modern computer architectures and operating systems.
Furthermore students shall understand the design principles underlying their implementations.
1. Computer architecture
a. Boolean algebra and combinatorial circuits
b. Number representations and arithmetic circuits
c. Instruction set architectures
d. Microarchitectures, in particular, the design of a basic reduced instruction
set machine, and performance optimizations such as pipelining and caches
2. Operating systems
a. Virtualization mechanisms
b. Scheduling algorithms
c. File systems
Will be announced before the start of the course on the course page on the internet.
This module is identical in content to the German-language module Systemarchitektur.
This module is part of the following study programmes: