Topics for dates in the future should be taken as tentative and subject to change. Links will generally be posted only as needed.
| Lecture | Topic | Reading |
|---|---|---|
| 1 | Introduction & Course Overview | (0.1--0.3) |
| 2 | OS History | 2.1--2.8 |
| 3 | Computer Hardware | 1.1--1.7 |
| 4 | I/O Basics & Disk Optimizations | 11.1--11.7 |
| 5 | I/O Software & Drivers | 11.8--11.10 |
| 6 | Introduction to File Systems | 12.1--12.4 |
| 7 | File Systems Implementation | 12.5--12.9 |
| 8 | Security & Protection | 16.1--16.7 |
| Exam in class. | ||
| 9 | Processes & Interrupts | 3.1--3.6 |
| 10 | Process Scheduling | 9.1--9.4 |
| 11 | Bounded Buffers & Critical Sections | 5.1 |
| 12 | Mutual Exclusion & Semaphores | 5.2 |
| 13 | Using Semaphores | 5.3 |
| 14 | Other IPC | 5.4--5.5 |
| 15 | Synchronization Protocols | 5.6--5.7 |
| 16 | Deadlock | 6.1--6.11 |
| Exam in class. | ||
| 17 | Introduction to Memory Management | 7.1--7.2 |
| 18 | Virtual Memory I | 7.3--7.4 |
| 19 | Virtual Memory II | 7.5 |
| 20 | Virtual Memory III | 8.1--8.2 |
| 21 | Memory Policies | 8.3 |
| 22 | Linux Memory | 8.4 |
| 23 | Pentium & Windows Memory Management | 8.5--8.6 |
| Self-scheduled final exam. | ||
If time permits at the end of the course we may consider additional topics.