CMSC 421: Principles of Operating Systems

Lecture & Homework Schedule

Standard disclaimer: dates are subject to change.

Date Lecture Homework Reading
Wed 08/26 Introduction HW1 assigned Sections 1.1 - 1.2
Mon 08/31 Roles of the Operating System Sections 1.3 - 1.11
Wed 09/02 System Calls Sections 2.1 - 2.8
Mon 09/07 Labor Day - No Classes
Wed 09/09 Processes Sections 3.1 - 3.3
Mon 09/14 File Descriptors HW1 due at 11:59:59 PM; HW2 assigned Sections 11.1 - 11.2, Linux File Descriptors
Wed 09/16 Interprocess Communication Sections 3.4 - 3.6, Linux Signals Overview
Mon 09/21 Parallelism Sections 4.1 - 4.5
Wed 09/23 Synchronization Sections 4.6, 5.1-5.4
Mon 09/28 Thread Synchronizations HW2 due at 11:59:59 PM; HW3 assigned Sections 5.5-5.7
Wed 09/30 Advanced Synchronizations Sections 5.7-5.9, 6.1
Mon 10/05 Scheduling Sections 6.2-6.3
Wed 10/07 Advanced Scheduling Sections 6.5-6.7
Mon 10/12 Memory Systems HW3 due at 11:59:59 PM; HW4 assigned Sections 8.1-8.3, 9.7
Wed 10/14 Paging Sections 8.4-8.5
Mon 10/19 Review Session
Wed 10/21 Midterm
Mon 10/26 Virtual Memory Sections 8.6, 9.1-9.3
Wed 10/28 Paging Strategies HW4 due at 11:59:59 PM; Proj1 assigned Sections 9.4-9.6, 9.8
Mon 11/02 Introduction to Linux Kernel LDD chapter 1, chapter 2
Wed 11/04 Device Drivers LDD chapter 3
Mon 11/09 Kernel Memory LDD chapter 8, chapter 11
Wed 11/11 Kernel Synchronizations LDD chapter 5, chapter 7
Mon 11/16 Interrupt Handling LDD chapter 10
Wed 11/18 Mass Storage Sections 10.1-10.5
Mon 11/23 Filesystems Proj1 due at 11:59:59 PM; Proj2 assigned Sections 11.3-11.4, 12.1-12.3
Wed 11/25 Filesystem Implementations Sections 12.4-12.7
Mon 11/30 Networking Sections 17.5-17.6, Linux NAPI Design
Wed 12/02 Security Sections 14.1-14.5, Linux Kernel Security
Mon 12/07 Embedded I/O Sections 13.2-13.3, Raspberry Pi Serial Communication
Wed 12/09 Review Session
Mon 12/14 Final Exam (6:00pm – 8:00pm) Proj2 due at 11:59:59 PM