Keith J. O'Hara

teaching

CPSC 45

Operating Systems (F2025)

overview | logistics | schedule | edstem | assignments | resources

Tentative Schedule (changes frequently)

week date topics readings tip work assigned
1
OS/UNIX
9/02/2025 course introduction syllabus; The Night Watch by James Mickens UNIX Zine
9/04/2025 UNIX; OS The UNIX Time-Sharing System; Intro To OS
2
PROCESSES
9/08/2025 xv6; shells; pipes xv6 pp. 9-19 lab 1
9/09/2025 processes process abstraction; process API
9/11/2025 context switching; signals limited direct execution; signals
3
SCHEDULING
9/15/2025 scheduling simulation; system calls xv6 pp. 21-29 lab 2
9/16/2025 FIFO; SJF; STCF; Round-Robin basic schedulers
9/18/2025 advanced schedulers MLFQ; lottery; multiprocessor
4
MEMORY I
9/22/2025 lab 3
9/23/2025 address spaces memory abstractions; API quiz 1
9/25/2025 translation and segmentation translation; segmentation
5
MEMORY II
09/29/2025 malloc free space management lab 4
09/30/2025 virtual memory paging; TLB
10/02/2025 advanced paging; swapping smaller tables; swapping mechanisms & policies
6
10/07/2025 page replacement simulation lab 5
10/7/2025
10/09/2025 quiz 2
7 10/13/2025 FALL BREAK
10/14/2025
10/15/2025
8
CONCURRENCY
10/20/2025 user-space threads lab 6
10/21/2025 threads thread abstraction & API
10/23/2025 synchronization lock implementation;
9
CONCURRENCY II
10/27/2025 asynch io; select event based concurrency lab 7
10/28/2025 synchronization II condition variables; semaphores
10/30/2025 concurrent data structures and bugs data structures; common problems
10
PERSISTENCE
11/03/2025 lab 8
11/04/2025 I/O; DMA devices; disks quiz 3
11/06/2025 files and directories
11
FILE SYSTEMS
11/10/2025 lab 9
11/11/2025 implementation file system implementation
11/13/2025 locality fast file systems
12
ERRORS
11/17/2025 lab 10
11/18/2025 crash consistency FSCK and journaling
11/19/2025 SSDs; data integrity and protection
13
DEVICES
11/24/2025 ioctl; mmap lab 11
11/25/2025 quiz 4
11/27/2025 THANKSGIVING
14
SECURITY
12/01/2025 lab 12
12/02/2025 security introduction; authentication
12/04/2025 acess control
15
VIRTUAL MACHINES
12/08/2025 lab 13
12/09/2025 virtual machine monitors quiz 5
16
FINAL
12/TBD/2025 FINAL EXAM PERIOD (TBD)