Computer Science 330
Operating Systems

Fall 2020, Siena College

Course Schedule

"OS zyBook" indicates readings/activities from CSIS 330: Operating Systems, by Bic and are shown on their due date. Additional readings will be given occasionally. Links will be added here to an outline for each lecture, the full text of each assignment, PDFs of my supplemental notes for each topic, and to copies of additional readings when available electronically. Note: all assignment and exam dates are subject to change, and are provided only as a general guideline until the actual lab assignment or exam is handed out in class.


Topic and/or Event Readings
August 24 Lecture 0x00: Course Introduction and Overview; Lab 1: GitHub and Unix [HTML] [PDF] Topic Notes: Introduction and Overview
August 28 Lecture 0x01: Introduction to Operating Systems; Lab 2: C [HTML] [PDF] OS zyBook Ch. 1
August 31 Lecture 0x02: C Crash Course; Lab 3: C Essentials [HTML] [PDF]
September 4 Lecture 0x03: Processes, Threads, and Resources; Programming Project 1: A Process Tree [HTML] [PDF] OS zyBook Ch. 2; Topic Notes: Processes and Threads
September 7 Lecture 0x04: Virtual Server Setup, System V Shared Memory; Lab 4: System V Shared Memory [HTML] [PDF]
September 11 Lecture 0x05: Scheduling OS zyBook Ch. 3; Topic Notes: CPU Scheduling
September 14 Lecture 0x06: More CPU Scheduling; Introduction to Concurrency; Programming Project 2: CPU Scheduler Simulation [HTML] [PDF] Topic Notes: Process Synchronization
September 18 Lecture 0x07: Concurrency; OS zyBook Ch. 4
September 21 Lecture 0x08: Semaphores; Lab 5: Concurrency [HTML] [PDF]
September 25 Lecture 0x09: Classic Problems of Synchronization;
September 28 Lecture 0x0a: Exam Prep; Lab Time; Lab 6: Synchronization Problems Practice [HTML] [PDF]; Lab 7: Unix System Programming [HTML] [PDF]
October 2 Midterm Exam (during class)
October 5 Lecture 0x0b: Deadlock; OS zyBook Ch. 5; Topic Notes: Deadlocck
October 9 Lecture 0x0c: Shell Project Intro; Programming Project 3: The Roger Bacon Shell [HTML] [PDF] Out OS zyBook Ch. 6
October 12 Lecture 0x0d: Synchronization Problems Recap; Memory Management; Topic Notes: Memory Management
October 16 Lecture 0x0e: Memory; Term Project Intro; One More Midterm Question; Term Project Out
October 19 Lecture 0x0f: Paging; OS zyBook Ch. 7
October 23 Lecture 0x10: Demand Paging
October 26 Lecture 0x11: Frame Allocation; Segmentation;
October 30 Lecture 0x12: Working Set Simulator Lab; Lab 8: Working Set Simulation [HTML] [PDF]
November 2 Lecture 0x13: File Systems; Topic Notes: File Systems; OS zyBook Ch. 8
November 6 Lecture 0x14: Exam Review; File Systems Wrapup; OS zyBook Ch. 9
November 9 Final Exam (during class)
November 13 Lecture 0x15: More Input/Output;
November 16 Lecture 0x16: Protection and Security; Wrapup; Topic Notes: Protection and Security; OS zyBook Ch. 10
November 21 Lecture 0x17: 4-6 PM (exam slot): Project Presentations

Acknowledgements: Lecture notes include material from