This course introduces advanced operating system topics and introduces recent developments in systems research. The course involves reading and understanding classic and new research papers on operating systems. Topics include operating system structure, threads and synchronization, virtual memory management, file systems, security, bug finding and transactions.
Office Hours:

MW 3:30-4:30pm, 9-120A

Course Information

Class meetings

MW 2-3:15pm


Undergraduate level Operating Systems concepts; Comfortable with a programming language

Required text

Papers and articles listed in schedule.

Optional text

[ISBN/0470233990] (for background knowledge)


40%Assignments (4 x 10%)
60%Quizzes (13 x 5% Open book, open notes (least score dropped))

Tentative Schedule

Topic 1: Foundations

Introduction & Administrivia

Disks & File Systems

File System Implementation

  1. [10.1145/146941.146943]

More about log-structured file system

  1. [10.1145/989.990]

  1. [0000/SYNC]

  1. [0000/VENTI]

More about archival storage


Last day to drop this course

  1. [0000/ZFSE2E]

  1. [10.1145/945445.945450]

More about Google file system

  1. [10.1145/1294261.1294281]


Last day to withdraw from this course

Consistent hashing and vector clocks

  1. [10.1145/1327452.1327492]

More about Map-Reduce

Guest Lecture

Memory management

Memory management

Memory management

  1. [10.1145/1060289.1060299]

  1. [10.1145/106972.106984]

Guest Lecture

Process management

  1. [10.1145/121132.121151]


  1. [10.1145/265924.265927]

Future directions