Princeton University
Computer Science Department

Computer Science 318
Operating Systems


Jaswinder P. Singh

Fall 2016


Directory
General Information | Schedule | Projects | Policies

Schedule and Lecture Notes

Here is the tentative schedule of lectures for the course. Links will be updated throughout the term.

You are expected to complete the readings before the corresponding lecture.

Date Topic Reading
9/14 Introduction MOS 1.1-1.3
9/19 Overview MOS 1.4-1.5
9/21 OS Structure MOS 1.6-1.7
9/26 Processes & Threads MOS 2.1, 2.2.1-2.2.3
9/28 Threads Implementation MOS 2.2.4-2.2.9
10/3 Mutex Implementation MOS 2.3.3, 2.3.6
10/5 Semaphores and Monitors MOS 2.3.5, 2.3.7, Birrell's paper
10/10 CPU Scheduling MOS 2.4
10/12 Deadlock MOS 6
10/17 I/O Devices and Drivers MOS 5.1-5.3, 5.5-5.9
10/19 Message Passing MOS 2.3.8, 8.2.1-8.2.4
10/24 Virtual Memory Address Translation MOS 3.1-3.3
10/26 Virtual Memory Paging and Replacement MOS 3.4
11/7 Virtual Memory Design Issues MOS 3.5-3.6, 10.4, 11.5
11/9 Storage Devices MOS 5.4
11/14 File Layout and Directories MOS 4.2,4.3.1-4.3.3, 4.5.2-4.5.3
11/16 Storage and File Hierarchy MOS 4.1, 9.3.1-9.3.3
11/21 File Caching and Reliability MOS 4.4.2-4.4.4, 4.3.5, 4.3.6
11/28 Journaling, NFS, and WAFL MOS 10.6.3-10.6.4, NetApp paper
11/30 Virtual Machine Monitors Virtual Machine Monitors paper
12/5 Guest Lecture by Kai Li. De-duplication file systems and backup
12/7 EXAM
12/12 Internetworking Guest Lecture by Nick Feamster
12/15 Security and Protection MOS 9