COMS W4118 Operating Systems I

Spring 2023 Course Overview

HW Due Dates

Date Assignment
F 1/20 HW0 due
F 1/27 HW1 due
Sa 2/11 HW3 due
Sa 2/25 Su 2/26 HW4 due
Sa 3/11 Su 3/12 (Hard Deadline) HW5 due
Su 4/2 T 4/4 (Hard Deadline) HW6 due
F 4/14 (Hard Deadline) HW7 due
T 5/2 (Hard Deadline) HW8 due

Course Schedule

1/17

Course overview and logistics


HW1: VM Setup & Linux Linked List


1/19

Introduction to UNIX

1/24

Linux System Overview

1/26

UNIX File I/O


HW2

Recitation: Sockets API and HTTP 1.0 in preparation for HW3

HW3: Multi-Server


1/31

Signals

2/2

Interprocess communication in UNIX

2/7

POSIX threads

2/9

Nonblocking I/O and I/O multiplexing

UNIX domain sockets

2/14

Exam 1 Review

2/16

Exam 1


HW4: Tabletop


2/21

Linux system calls

2/23

Run queues and wait queues


HW5: Fridge


2/28

Interrupts & Spin Locks

3/2, 3/7

Synchronization

3/9

Scheduling algorithms

3/14, 3/16

Spring Break – No Class


HW6: Freezer


3/21

Scheduling in Linux

3/22

Introduction to Paging

3/28

x86 Page Tables

Translation Lookaside Buffer (TLB)

3/30

Virtual Memory Beyond Physical Memory


HW7: Farfetch’d


4/4

Linux Memory Management

4/6

Storage Devices: HDD and SSD

Block Allocation Strategies

4/11

UNIX File System

Journaling

4/13

Exam 2 Review

4/18

Exam 2


HW8: Pantry


4/20

Log-Structured File System

Linux file system architecture

Course Wrap Up

4/25

Speed read()-ing: The Quest to Accelerate RocksDB Reads Using eBPF

Guest lecture presented by Jeremy Carin and Tal Zussman, current OS TAs

Modern SSDs have improved substantially in recent decades, to the point where the kernel storage software stack is quickly becoming a bottleneck when issuing I/O requests. In response, Columbia researchers recently designed XRP, a framework to safely inject user code into the kernel with eBPF to speed up storage requests for structured data. We will describe our work integrating RocksDB, a highly-optimized key-value store, with XRP, and in the process take you on a whirlwind tour of several key kernel subsystems in this lecture with a narrative.

4/27

Virtualization: Concepts and Applications

Guest lecture presented by Kent Hall, VMware software engineer and former OS TA

You’ve been pulling your hair out over your virtual machines all semester, but ever wonder how they work? This lecture offers a general overview of virtualization concepts which have enabled the performant execution of isolated guest operating systems. We’ll then take a peek into KVM, the hypervisor built right into the Linux kernel, for an applied demonstration of these concepts.

5/9

Exam 3


Last updated: 2023-05-09