Course Overview

Basic concepts and principles of multiprogrammed operating systems. Processes, interprocess communication, CPU scheduling, mutual exclusion, deadlocks, memory management, I/O devices, file systems, protection mechanisms. Prerequisites: CompSci 201 and 250.

Lecture: Monday/Wednesday 1:45-3pm, LSRC B101
Discussion: Friday 1:45-3pm, LSRC B101
Resources: Sakai, Gradescope, Ed Discussion, Panopto

Course Staff

Instructors: Danyang Zhuo
TAs: Yicheng Jin, Xinhao Kong, Shujun Qi
UTAs: Andrew Fate-Bolognone, Hosung Kim, Minjun Kwak, Aining Liu, Edison Ooi, Vineel Vanam
Office Hours:
Danyang Zhuo - Thursday 10-11am, LSRC D313
Yicheng Jin - Monday 3:30-4:30pm, LSRC D122
Xinhao Kong - Wednesday 3:30-4:30pm, LSRC D122
Shujun Qi - Monday 11am-noon, LSRC D122
Andrew Fate-Bolognone - Friday 3-4pm, Zoom
Hosung Kim - Tuesday 10-11am, LSRC D122
Minjun Kwak - Saturday 2-3pm, Zoom
Aining Liu - Tuesday 3-4pm, Zoom
Edison Ooi - Thursday 6-7pm, Zoom
Vineel Vanam - Wednesday 11:30-12:30pm, Zoom


Operating Systems: Principles and Practice (2nd edition). Thomas E. Anderson and Michael Darhlin.


50% Programming Assignments
20% Midterm Exam
30% Final Exam


This course reuses much of the material from MIT’s 6.828/6.S081 and University of Washington's CSE 451.