CMSC 421: Principles of Operating Systems

Lecture & Homework Schedule

Standard disclaimer: dates are subject to change.

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