CMSC 421: Principles of Operating Systems

Lecture & Homework Schedule

Standard disclaimer: dates are subject to change.

Date Lecture Homework Reading
Tue 01/27 Introduction HW1 assigned Sections 1.1 - 1.2
Thu 01/29 Roles of the Operating System Sections 1.3 - 1.11
Tue 02/03 System Calls Sections 2.1 - 2.8
Thu 02/05 Processes Sections 3.1 - 3.3
Tue 02/10 Interprocess Communication HW1 due at 11:59:59 PM; HW2 assigned Sections 3.4 - 3.6
Thu 02/12 Parallelism Sections 4.1 - 4.5
Tue 02/17 Synchronization Sections 4.6, 5.1-5.4
Thu 02/19 Thread Synchronizations, part 1 Sections 5.5-5.7
Tue 02/24 Thread Synchronizations, part 2 HW2 due at 11:59:59 PM; HW3 assigned Sections 5.7-5.9, 6.1
Thu 02/26 Scheduling Sections 6.2-6.3
Tue 03/03 Advanced Scheduling Sections 6.5-6.7
Thu 03/05 Class Cancelled - Snow
Tue 03/10 Memory Systems HW3 due at 11:59:59 PM; HW4 assigned Sections 8.1-8.3, 9.7
Thu 03/12 Paging Sections 8.4-8.5
Tue 03/17 Spring Break
Thu 03/19 Spring Break
Tue 03/24 Virtual Memory Sections 8.6, 9.1-9.3
Thu 03/26 Paging Strategies Sections 9.4-9.6, 9.8
Tue 03/31 Midterm
Thu 04/02 Introduction to Linux Kernel HW4 due at 11:59:59 PM; Proj1 assigned LDD chapter 1, chapter 2
Tue 04/07 Device Drivers LDD chapter 3
Thu 04/09 Kernel Memory LDD chapter 8, chapter 11
Tue 04/14 Kernel Synchronizations LDD chapter 5, chapter 7
Thu 04/16 Interrupt Handling LDD chapter 10
Tue 04/21 Mass Storage Sections 10.1-10.5
Thu 04/23 File Operations Proj 1 due at 11:59:59 PM; Proj 2 assigned Sections 11.1-11.3
Tue 04/28 Filesystems Sections 12.1-12.4
Thu 04/30 Filesystem Implementations Sections 12.4-12.7
Tue 05/05 Kernel Security Sections 14.1-14.5
Thu 05/07 Networking Sections 17.5-17.6, Linux NAPI Design
Tue 05/12 Review Session
Thu 05/14 Final Exam (6:00pm – 8:00pm); Proj2 due at 11:59:59 PM