DATE | TOPIC | READING | NOTES & LINKS |
---|---|---|---|
9/5 | Course Overview & Introduction, Pintos Introduction Session | Ch. 1 | Syllabus, Pintos Documentation |
9/12 | Operating System Structures, Project 1 - Threads Session | Ch. 2 | Group Assignments Complete |
9/19 | Processes | Ch. 3 | |
9/26 | Threads | Ch. 4 | |
10/3 | Process Synchronization | Ch. 5 | |
10/10 | CPU Scheduling | Ch. 6 | Project 1 - Threads Due |
10/17 | Project 2 - User Programs Session | Midterm Exam (online), Debugging User Programs (video) | |
10/24 | Main Memory | Ch. 7 | |
10/31 | Virtual Memory | Ch. 8 | |
11/7 | Mass Storage Systems | Ch. 9 | |
11/14 | Project 3 - Virtual Memory Session | Project 2 - User Programs Due | |
11/21 | Thanksgiving Break | ||
11/28 | File System Interface & Implementation | Ch. 10 & 11 | |
12/5 | I/O Systems | Ch. 12 | |
12/12 | Protection & Security | Ch. 13 & 14 | |
12/19 | Project 3 - Virtual Memory Due, Project 4 - Filesystems Due (graduate only), Final Exam (online) |
Please refer to the Syllabus for more details on the course, grading, schedule, etc.. This page is meant only as a summary and quick-reference.
Reference Links
Course Matierials
-
Week 8 Slides (Main Memory)
Lecture slides for 8th week of class.
-
Week 6 Slides (Pintos Project 2 - User Programs)
Lecture slides for 6th week of class.
-
Week 5 Slides (CPU Scheduling and Synchronization)
Lecture slides for 5th week of class.
-
Week 4 Slides (Process Synchronization)
Lecture slides for fourth week of class.
-
Week 3 Slides (Processes and Threads)
Lecture slides for third week of class.
-
Week 2 Slides (Pintos and Operating System Structures)
Lecture slides for second week of class.
-
Week 1 Slides (Introduction and Pintos)
Lecture slides for our first week of class.
-
COS 450 Operating Systems
The course follows a bottom up construction of a general-purpose operating system beginning with the hardware interface and ending with the user interface. Specific topics covered include concurrent processes, process management, I/O, virtual memory, file management, resource scheduling, and performance measurement. Students are assumed to be familiar with general machine architecture, functions of system software (compilers, loaders, editors, etc.), data structures, and to have some experience with UNIX or another multiprogramming operating system.
The class is dual-listed as an undergraduate (COS 450) and graduate course (COS 550); graduate students will have additional reading and must prepare a presentation for the class (see below).
subscribe via RSS