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 in 833 Mudd unless otherwise indicated. Reading assignments refer to the course textbook unless otherwise indicated.

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