Course Schedule

CS422/522: Design and Implementation of Operating Systems, Fall 2018, Yale University

Last modified: August 28, 2018.


8/29:
Lecture: Introduction (AD 1)
8/31:
Lecture: The Kernel Abstraction (AD 2.1-2.6, 2.9)

9/5:
Lecture: Memory Management (AD 8.1-8.2); The Programming Interface (AD 3.1-3.5)

9/10:
Lecture: Concurrency and Threads (AD 4.1-4.8)
9/12:
Lecture: Synchronization (AD 5.1-5.4);
9/13:
Assignment 1 Due.

9/17:
Lecture: Locks & Condition Variables (AD 5.1-5.4)
9/19:
Lecture: Synchronization Case Studies (AD 5.3-5.6)

9/24:
Lecture: Implementing Synchronization Objects (AD 5.7-5.8)
9/26:
Lecture: Multi-Object Synchronization (AD 6.1-6.5)
9/27:
Assignment 2 Due.

10/1:
Lecture: CPU Scheduling (AD 7.1-7.7)
10/3:
Lecture: Address Translation (AD 8.1-8.3)

10/8:
Lecture: Real-Time Systems
10/10:
Hacking Day (No Lecture)
10/11:
Assignment 3 Due.

10/15:
Lecture: Cache and Virtual Memory (AD 9.1-9.7)
10/17:
October Recess (no class)

10/22:
Lecture: I/O Devices and Drivers (AD 11.1-11.4)
10/24:
Lecture: Storage Devices (AD 12.1-12.2)

10/29:
Lecture: Files and Directories (AD 13.1-13.4)
10/31:
Lecture: Midterm Review
11/1:
Assignment 4 Due.

11/5:
Midterm Exam (in-class, 75 minutes)
11/7:
Lecture: Reliable Storage (AD 14.1-14.3)

11/12:
Lecture: Reliable Storage; Security and Trust
11/14:
Lecture: Security and Trust
11/15:
Assignment 5 Due.

11/26:
Lecture: CertiKOS
11/28:
Lecture: Distribtued OS

12/3:
Lecture: EVM & Blockchain
12/5:
Lecture: Networking and Protocol Stacks
12/6:
Assignment 6 Due.

Copyright (c) 1998-2018 Zhong Shao, Dept. of Computer Science, Yale University