OPERATING SYSTEMS ICOMS W4118, Dept of Computer Science, Columbia University
Home | Announcements | Lectures | Homeworks | Grades | Discussion | Resources | Facebook

LECTURES
The following is a preliminary schedule for the class. Exam dates and topics covered are subject to change. All classes are held MW8:40-9:55AM on Zoom. Reading assignments refer to the course textbook unless otherwise indicated.

no. day date topic assignment
1 Mon 1/11 Introduction and logistics Homework 1 Out, Read Ch 1, Ch 2
2 Wed 1/13 OS Overview and History (Supplemental Slides) Read Ch 3, Ch 2-3 Linux Kernel Development
Mon 1/18 MLK Day - No class
3 Wed 1/20 Interrupts, System Calls and Protection Read Ch 4
4 Mon 1/25 Processes and Linux Processes Homework 2 Out, Read Ch 6 and 18 Linux Kernel Development
5 Wed 1/27 More Processes, Cooperating Processes Read Ch 6, Ch 5 Linux Kernel Development
6 Mon 2/1 Signals, Threads
7 Wed 2/8 Dependencies and Synchronization
8 Mon 2/8 Synchronization Homework 3 Out, Read Ch 9 and 10 Linux Kernel Development
9 Wed 2/10 Synchronization Read Ch 5, Read Ch 4 Linux Kernel Development (Wait Queues)
10 Mon 2/15 More Synchronization (RCU Supplemental Figures)
11 Wed 2/17 CPU Scheduling Read Ch 7
12 Mon 2/22 Midterm Exam Review
13 Wed 2/24 Midterm Exam Homework 4 Out
Mon 3/1 Spring Break - No class
Wed 3/3 Spring Break - No class
14 Mon 3/8 Scheduling Mechanisms vs Policies, Linux and Solaris Read Ch 8
15 Wed 3/10 Intro to Memory Management
16 Mon 3/15 Paging Read Ch 9
17 Wed 3/17 Paging in Linux, Segmentation Homework 5 Out, Read Ch 12 (Pages) and 15 in Linux Kernel Development
18 Mon 3/22 Virtual Memory Read Ch 10
19 Wed 3/24 Virtual Memory Read Ch 11
20 Mon 3/29 File Systems Read Ch 12
21 Wed 3/31 File Systems Homework 6 Out, Read Ch 13 in Linux Kernel Development
22 Mon 4/5 File Systems in Linux
23 Wed 4/7 I/O Systems
24 Mon 4/12 Disk Scheduling
25 Wed 4/14 Final Review
Fri 4/23 Final Exam (9am-12noon)