COMS W4118 Operating Systems I

Spring 2014

Important dates

F 1/31 HW1 due
R 2/6 (Optional) Recitation (during class time) on Socket API and HTTP 1.0
W 2/12 HW2 due
F 2/21 HW3a due
Su 3/2 HW3b due
R 3/6 Midterm review by TA
T 3/11 Midterm exam
Sa 3/29 HW3c due
W 4/9 HW4a due
T 4/15 HW4b due
M 4/28 HW5 (a & b) due
R 5/15 Final exam – 5:40–7:00pm – note the unusual start time

Syllabus

T 1/21: Course overview and logistics

R 1/23: Introduction to OS

T 1/28, R 1/30: Linux System Overview: From Boot To Panic

HW2: Linux Linked List

T 2/4: UNIX File I/O

R 2/6: Sockets API and HTTP 1.0

T 2/11, R 2/13: Interprocess communication in UNIX

HW3a: HTTP Server, phase A – Group project

T 2/18: Signals

R 2/20: POSIX threads

T 2/25: Nonblocking I/O and I/O multiplexing

HW3b: HTTP Server, phase B – Group project

T 2/25, R 2/27: Thread design and implementation

T 3/4: Synchronization I

R 3/6: Midterm review by Jonathan Balsano

T 3/11: Midterm exam

R 3/13: UNIX domain sockets

T 3/18, R 3/20: Spring break – No class

HW3c: HTTP Server, phase C – Group project

T 3/25, R 3/27: Synchronization I & II

HW4a: Building a custom kernel in Arch Linux – Individual assignment

T 4/1: Linux system calls

R 4/3: Linux processes

HW4b: Linux System Calls – Group project

T 4/8, R 4/10: Linux processes, run queues & wait queues

T 4/15: Disks – Optional topic

T 4/15: Block allocation methods & UNIX file system

R 4/17: Journaling and log-structured file system

HW5a: Linux Virtual File System – Group project – due Mon, Apr 28

HW5b: Linux Virtual File System – Group project – due Mon, Apr 28

T 4/22: Scheduling algorithms


Last updated: 2014–04–22