Course Instructor: Octavian Purdilă.
The Operating Systems Design course is an advanced course about the concepts that are used throughout the operating systems. The course is focused on a deep analysis of the operating system kernel and its subsystems. The analysis is performed on the Linux and Windows NT kernels. Its objectives are: understanding how the kernel's role in an operating system and how it and its subsystems work; understanding the basic mechanisms dealing with the kernel: concurrency, processes, I/O processing, scheduling, virtual memory, etc. The course aims at fixing the theoretic aspects through related homeworks; the homeworks take the shape of kernel modules that interract directly with the operating system kernel.
Syllabus:
- Introduction.
- System calls.
- Deferrable functions.
- Address space.
- Physical memory.
- Virtual memory.
- Filesystems.
- Networking.
- Assembly and linking.