(SESSION: 2021 - 2022)

Course Overview

This course studies the fundamental design and implementation of operating systems. The topics include the bootup sequence, memory management, processes, interrupt handling, file systems, synchronization, inter-process communication, device drivers, and security issues in modern operating systems.


Computer Organization, Advanced Programming in C, Data Structures and Algorithms, Assembly Language Programming for x86.

Reference Material

Textbook: Operating System Concepts, A. Silberschatz, P.B. Galvin, and G. Gagne, Ninth Edition (any edition of this book beyond the Fifth edition will suffice).

Other recommended book: Operating Systems: Principles and Practice, T. Anderson and M. Dahlin, Second edition.

Other recommended book: Modern Operating Systems, A.S. Tanenbaum, third edition.

Other recommended books: Operating Systems, L.F. Bic zybooks

There might also be some readings (technical papers). The instructors will announce in class when and where the readings will be available.

Time & Place

See class timetable for lecture and laboratory time/place.