Operating Systems



* 05/13 Final solution is posted here.

* The next lecture on security will be moved to Friday 4/17 6:30-8pm at WWH102

* 03/24 Midterm solution posted.

* 03/03 Midterm covers L1-L7 and lasts 80 minutes. It is open book, open notes (no laptop).

* 02/12 Notes the grade composition has changed. Lab 1 contributes 15% of your final grade and Mid-term exam contributes 20%.

* 02/10 Lab 2 and Lab 3 have been posted!

* 01/20 Register for the class mailing list g22_2250_001_sp09

Instructor: Jinyang Li (Office hour: Mon 6-7pm or email for appointment)

TA: Nguyen Tran (Office hour: Tue 5-6pm)

Class time: Tue 7-9:00pm CIWW 109

Mailing list: g22_2250_001_sp09

Course information

This class teaches the fundamental elements of operating system design and engineering. Specifically, you will study virtual memory, kernel and user mode, system calls, threads, context switches, interrupts, interprocess communication, coordination of concurrent activities, and the interface between software and hardware. Most importantly, you will study the interactions between these concepts, and how to manage the complexity introduced by te interactions.

This class is a graduate level course (and is a required class for M.S. students). It consists of lectures, three programming labs, one mid-term and one final exam. Students who have done well on the labs and mid-term exam may optionally do a final class project instead of taking the final exam upon approval. The final grade is made up of class participation (10%), mid-term and final exam (20%,25%), labs 1-3 (15%,15%,15%).


1. Programming experience in C (must)
2. Undergraduate Operating Systems (optional)


The lectures are loosely based on ``Modern Operating Systems'' by Andrew Tanenbaum.

Other useful but not necessary references:

Questions or comments? email the staff

Policy on academic integrity