Operating Systems 2
Learning materials for the Operating Systems 2 course.
Be warned, that published here lecture notes were not reviewed and despite my best efforts may contain errors!
Lectures
- Introduction
- Process Management
- Processes Scheduling (O(1) Scheduler)
- Processes Scheduling (CFS Scheduler)
- System Calls
- Interrupts Handling
- Bottom Halves
- Synchronization in Linux Kernel
- Time Management and Timers
- Memory Management in Linux
- Virtual File System
- Character and Block Devices
- The Block I/O Layer
- Process Address Space
- Networking
During the break caused by the COVID-2019 epidemic outbreak the learning materials (slides) for the next lectures will be publish here on every Monday. Please read them, learn the concepts described in them and in case of questions contact me via e-mail (details in Kontakt/Contact).
Literature and other resources
Primary Literature:
- Robert Love, "Linux Kernel Development", Third Edition, Addison-Wesley, Upper Saddle River, NJ, 2010
- Jonathan Corbet, Alessandro Rubini, Greg Kroah-Hartman, "Linux Device Drivers"
- Wolfgang Mauerer, "Professional Linux Kernel Architecture", Wiley Publishing, Inc., Indianapolis, 2008
- Sreekrishnan Venkateswaran, "Essential Linux Device Drivers", Prentice Hall, Upper Saddle River, 2008
- Daniel P. Bovet, Marco Cesati, "Understanding the Linux Kernel, 3rd Edition", O'Reilly Media, Sebastopol 2005
Additional Literature:
- Mel Gorman, "Understanding the Linux Virtual Memory Manager"
- Maurice J.Bach, "The Design of the Unix Operating System”, Prentice Hall 1986