| Lecture | Reading (Chapter) |
Topic (Notes) | Project | |
|---|---|---|---|---|
| Part I | ||||
| 0 | Course Intro | |||
| 1,2 | 1 | A Brief OS History | Using System Calls | |
| 3,4 | 1 | Computer Organization | ||
| 5,6 | 1 | OS Structures | ||
| 7,8 | 2 | Processes | User Interfaces | |
| 9 | 2 | Threads | ||
| 10,11,12 | 3 | CPU Scheduling | Shell Scripting | |
| Part II | ||||
| 13,14,15 | 4 | Process Synchronization | ||
| 16 | 4 | Deadlocks | ||
| 17, 18, 19 | 6 | Memory Management I | A Command Shell | |
| 20, 21, 22 | 7 | Memory Management II | ||
| Part III | ||||
| 23, 24 | 8 | File Systems | The Linux Kernel | |
| 25, 26 | 8 | Storage Management | ||
| 27, 28, 29 | 9 | Networks | Client-Server Systems | |
| 30, 31, 32 | 10 | Distributed Systems | ||
The three tests will focus on Parts I, II, and III, respectively.