Semester: summer 2023/24
Lectures: Thu 14:00, S10 (Martin Děcký)
Page in SIS: NSWI161
Grading: Exam

Previous year (in Czech): 2022/23

Course Overview

The Advanced Operating Systems course offers a detailed look at the advanced software architectures, features and implementation techniques of state-of-the-art operating systems. The course consists of a series of consecutive lectures, but some of the lectures might be substituted by invited talks by experts (depending on their immediate availability) from leading companies that develop operating systems.

In the summer semester of 2023/2024, the lectures take place in the lecture room S10 each Thrusday at 2 p.m. The lectures are taught either in English or in Czech (depending on the preference of the enrolled students). The supplementary study materials are typically provided in English.

The course is a follow-up to the Operating Systems course from winter semester. Therefore this course assumes a reasonable degree of prior understanding of the basics taught in the winter semester course.

This web site serves as the primary source of information about the course. Urgent matters might be also announced via e-mails (sent to the e-mail addresses registered in SIS). For technical and organizational inquiries, please create an issue in the GitLab forum. It is also possible to subscribe to the notifications of this course repository and follow the questions asked by others.

In case of a question or a comment that you do not wish to discuss publicly, please feel free to approach either the lecturer Martin Děcký or the course guarantor Petr Tůma directly.

News

If you need a written exam date (or potentially a reparative attempt), please approach the lecturer (by e-mail) and we will agree on the next exam date to be scheduled.

Course Topics

Since the domain of operating systems is very broad and it is not possible to cover everything in the time given in fine detail, the actual focus of the individual lectures should be strongly influenced by the preferences of the enrolled students.

Below is the list of the supplementary study materials for the topics that have been covered during the semester.

  1. Introduction (2024-02-22)

  2. Programming languages and techniques (2024-02-29)

  3. Interfaces, abstractions and portability (2024-03-21)

  4. Virtualization (2024-04-18)

  5. File systems (2024-04-25)

  6. Observability, performance, debugging, tracing and instrumentation (2024-05-02)

  7. Lea Schmierer (Heidelberg University): Microkernel Architecture and Operating Systems Security (2024-05-16)

  8. Vlastimil Babka (SUSE): Advanced Linux Memory Management (2024-05-23)

Consultations

Should you need individual consultations, please approach the lecturer or the guarantor via e-mail to arrange an ad-hoc meeting. For practical reasons, we usually prefer times just before or just after the lecture, but other times are also possible.

Grading

There are several alternative ways of passing the course:

Exam

N.B.: If you need a written exam date (or potentially a reparative attempt), please approach the lecturer (by e-mail) and we will agree on the next exam date to be scheduled.

The written exam consists of a certain number of questions/tasks randomly selected from the list below

As usual, the purpose of the written exam is not to probe on the encyclopedic knowledge per se, but rather to examine the actual level of understanding. Therefore we strongly encourage to approach each question/task both broadly and deeply, to explain the context and to formulate your reply in a systematic, coherent and unambiguous way that clearly demonstrates your level of understanding. The replies should focus on the why more than on the what.

Literature