CS370: Operating Systems |
| {Announcements} | {Syllabus} | {Grading} | {Schedule} | {Assignments} | {Piazza} |
| Last updated on Tuesday, December 4, 2018 4:33 PM | |||
| Professor | Lecture Coordinates | ||
Shrideep Pallickara |
TTH (2:00-3:15 PM) |
||
| Key to Notation Readings will be from the Operating Systems Concepts book by Silberschatz, Galvin, and Gagne 9th edition. John Wiley & Sons, Inc. ISBN-13: 978-1118063330. [SCG] |
| Week | Date | Topic | Assignments | Readings |
| 1 | Aug 20-24 | Introduction Operating Systems: Roles, history of the OS, memory hierarchy, kernel abstraction, kernel mode and user mode transitions, and buses. Lecture 1 [PDA-ver] (8/21) Lecture 2 [PDA-ver] (8/23) Help Session 1 (8/23) |
HW1 8/21 Term-Project (TP) 8/22 |
Ch {1,2} [SGG] Ch {1} [RR] Ch {1} [AT] Ch {1} AD |
| 2 | Aug 27-31 | Processes Programs and processes, memory layout of processes, process control blocks, interrupts and context switches, and process groups. Lecture 3 [PDA-ver] (8/28) Lecture 4 [PDA-ver] (8/30) Help Session 2 (8/30) |
TP-D1 due 8/29 HW2 08/30 |
Ch {3} [SGG] Ch {2} [AT] Ch {2, 3} [RR] Ch {2, 3} [AD] |
| 3 | Sep 3-7 | Inter Process Communications Shared memory, pipes, and message-based communications. Lecture 5 [PDA-ver] (9/4) Lecture 6 [PDA-ver] (9/6) Help Session 3 (9/6) |
HW1 due 9/5 HW3 09/05 |
Ch {3} [SGG] Ch {2} [AT] Ch {2, 3} [AD] |
| 4 | Sep 10-14 | Threads Differences between processes and threads, thread models, user and kernel threads, multithreading models, threading libraries (POSIX, Win32, and Java). Lecture 7 [PDA-ver] (9/11) Lecture 8 [PDA-ver] (9/13) |
Ch {4} [SCG] Ch {2} [AT] Ch {12} [RR] Ch {4} [AD] |
|
| 5 | Sep 17-21 | Process Synchronization Critical section problem, Peterson’s solution, synchronization hardware and Instruction Set Architecture support, semaphores, classical problems of synchronization: Bounded buffers, Readers-Writers, Dining Philosophers, monitors, and synchronization constructs. Lecture 9 [PDA-ver] (9/18) Lecture 10 [PDA-ver] (9/20) Help Session 4 (9/20) |
HW4 09/18 HW2 due 9/19 |
Ch {5}[SCG] Ch {4} [AT] |
| 6 | Sep 24-28 | Lecture 11 [PDA-ver] (9/25) Atomic Transactions Atomic transactions and serializability, locking protocols, and checkpointing and rollback recovery of transactions. Lecture 12 [PDA-ver] (9/27) |
HW3 due 9/26 |
Ch {5, 6} [SCG] Ch {4} [RR] |
| 7 | Oct 01-05 | Midterm (10/02) CPU Scheduling Scheduling criteria including fairness and time quanta, preemptive and non-preemptive scheduling, Scheduling algorithms: FCFS, shortest jobs, priority, round-robin, multilevel feedback queues, and scheduling on multiprocessors. Lecture 14 [PDA-ver] (10/4) |
Ch {6} [SCG] Ch {7} [AD] Ch {2} [AT] |
|
| 8 | Oct 08-15 | Lecture 15 [PDA-ver] (10/9) Deadlocks Deadlock characterization, deadlock prevention, deadlock avoidance, Bankers algorithm, recovery from deadlocks. Lecture 16 [PDA-ver] (10/11) |
Ch {5, 7}[SCG] Ch {4} [AT] Ch {4} [AD] |
|
| October 02: Mid term October 15: Last day for drop with W |
||||
| 9 | Oct 15-19 | Lecture 17 [PDA-ver] (10/16) Lecture 18 [PDA-ver] (10/18) Help Session 5 (10/18) |
HW5 10/15 TP-D2 due 10/17 |
Ch {7} [SCG] Ch {6} [AT] Ch {4} [AD] |
| 10 | Oct 22-26 | Memory Management Address binding, address spaces, swapping of processes, contiguous memory allocation, segmentation, paging, shared pages, structure of page tables, hardware support for paging, memory protection in paged environments, use of segmentation and paging. Lecture 19 [PDA-ver] (10/23) Lecture 20 [PDA-ver] (10/25) |
Ch {7, 8} [SCG] Ch {5,6} [RR] Ch {3} [AT] Ch {9} [AD] |
|
| 11 | Oct 29- Nov 02 | Lecture 21 [PDA-ver] (10/30) Lecture 22 [PDA-ver] (11/01) |
Ch {8} [SCG] Ch {3} [AT] Ch {9} [AD] |
|
| 12 | Nov 05-09 |
Virtual Memory Demand paging, copy-on-write, page Replacement, Belady’s anomaly and stack algorithms, allocation of frames, thrashing and working sets, memory-mapped files, allocation of kernel memory. Lecture 23 [PDA-ver] (11/06) Lecture 24 [PDA-ver] (11/08) |
HW5 due 11/07 | Ch {9} [SCG] |
| 13 | Nov 12-16 | Virtualization Virtual Machine Monitors (VMMs), Popek and Goldberg virtualization requirements, type-1 hypervisor, type-2 hypervisor. Lecture 25 [PDA-ver] (11/13) Lecture 26 [PDA-ver] (11/15) |
Ch {16} [SCG] Ch {7} [AT] Ch {10} [AD] |
|
| 14 | Nov 26-30 | File Systems File system structure, virtual file systems, contiguous allocation, linked allocations, File Control Blocks, Unix File System and inodes, NTFS, and FAT32. Lecture 27 [PDA-ver] (11/27) Lecture 28 [PDA-ver] (11/29) |
Ch {10, 11} [SCG] Ch {5} [AT] Ch {4} [RR] |
|
| 15 | Dec 03-07 | Mass Storage & Disk Scheduling Disk Management, swap space management, disk scheduling algorithms: FCFS, SSTF, SCAN, C-SCAN, and LOOK, storage based on flash memory and SSDs. Lecture 29 [PDA-ver] (12/04) Lecture 30 [PDA-ver] (12/06) |
TP-D3 due 12/05 | Ch {11, 12} [SCG] Ch {12} [AD] |
| Thursday, December 13: Final in Clark A-103 from 9:40-11:40 am December 17: Final Grades will be posted |
||||
| Department of Computer Science, Colorado State University, Fort Collins, CO 80523 USA © 2018 Colorado State University |