CSCI 3323 (Principles of Operating Systems):
Schedule

The table below shows planned topics, readings, and assignments. Readings are from the textbook unless otherwise stated. Assignments are due at 11:59pm on the date shown, unless otherwise indicated.

Lecture date Topics Reading Assignments
August 25 (W) About the course (Notes)    
August 30 (M) No class 1; 2    
September 1 (W) Introduction; history of operating systems (Notes)    
September 6 (M) Holiday    
September 8 (W) Processes; processes in UNIX (Notes) 3; 4; 5  
September 13 (M) Executing programs (Notes) 6 Reading Quiz 1: HTML, PDF  
September 15 (W) Executing programs, continued; introduction to CPU scheduling (Notes) 7  
September 20 (M) No class    
September 22 (W) CPU scheduling, continued (Notes) 8; 9; 11 Reading Quiz 2: HTML, PDF  
September 27 (M) No class    
September 29 (W) CPU scheduling, continued (Notes)   Homework 1a (written problems) HTML, PDF;
Homework 1b (programming problem) HTML, PDF  
October 1 (not a class day, make-up lecture) CPU scheduling, continued; CPU virtualization concluding remarks (Notes)    
October 4 (M) No class    
October 6 (W) Memory management: Introduction; API (Notes) 12; 13; 14 Reading Quiz 3: HTML, PDF
(accepted without penalty through 10/08)  
October 8 (not a class day, make-up lecture) Memory management: Contiguous allocation; segmentation (Notes) 15; 16  
October 11 (M) Memory management: Managing free space (Notes) 17    
October 13 (W) Memory management: Introduction to Paging (Notes) 18   Homework 2a (written problems) HTML, PDF;
Homework 2b (programming problem) HTML, PDF
(both accepted without penalty through 10/14)  
October 18 (M) Memory management: Paging, continued (Notes) 19; 20    
October 20 (W) Memory management: Swapping (Notes) 21   Reading Quiz 4: HTML, PDF
 
October 25 (M) Memory management: Swapping, continued (Notes) 22    
October 27 (W) Memory management: Case studies (Notes) 23; 24    
November 1 (M) No class   Reading Quiz 5: HTML, PDF
 
November 3 (W) No class    
November 8 (M) Concurrency and threads: Introduction (Notes) 25; 26    
November 10 (W) Concurrency and threads: Mutual exclusion; reasoning about concurrent algorithms (Notes)   Homework 3a (written problems) HTML, PDF (accepted without penalty through 11/12)
November 15 (M) Concurrency and threads: Mutual exclusion continued; semaphores; bounded-buffer problem (Notes)    
November 17 (W) Concurrency and threads: Monitors; dining philosophers problem (Notes)   Homework 3b (programming problems) HTML, PDF (accepted without penalty through 11/19)
 
November 22 (M) No class    
November 24 (W) Holiday    
November 29 (M) No class    
December 1 (W) Concurrency and threads: Programming with POSIX threads; wrap-up (Notes) 27 (skim); 28 (skim); 30 (skim); 31 (skim); 32 (skim); 34  
December 6 (M) Course wrap-up and evaluations   Reading Quiz 6: HTML, PDF
(accepted without penalty through final deadline)  
December 8 (W) Not a class day; overview of persistence (recorded lecture, parts 1 and 2) (Notes), (Notes)   35; 36; 37 (skim); 39 (skim); 40 (skim); 46    
December 10 (F) Not a class day     Homework 4a (written problems) HTML, PDF
(accepted without penalty through final deadline)  
December 16 (Th) Not a class day   Final deadline for all work;
Reading Quiz 7: HTML, PDF