CS 571 Operating Systems (Spring 2022)

Course Schedule

The course schedule and the reading list are tentative and subject to change*.

Please enter the composition of your team by filling this Google Form. It’s preferred that a team has 2 people. If you choose to work as a team, only one team member needs to fill the form.

WeekWednesday Friday
Week 1 Jan 26
Lec 1: Introduction [slides]
Jan 28
Take prerequisite quiz
Fill out background survey
Project list released: Pick your idea+form a team
Week 2 Feb 2
Lec 2: Basic scheduling [slides] [slides+notes]
Reading: LDE and Scheduling (intro)
Feb 4
Form a team due
Week 3 Feb 9
Lec 3: Advanced scheduling [slides] [slides+notes]
Reading: MLFQ, Multi-core Sched (Linux), man 7 sched, and Linux CFS
Feb 11
Pick a project idea due
Week 4 Feb 16
Lec 4: Memory virtualization (fundamental) [slides] [slides+notes]
Reading: Address spaces, Address translation, Paging, TLB, and Adv. PTs
Optional: Meltdown attack paper, CACM article
Feb 18
Week 5 Feb 23
Lec 4 (cont.): Memory virtualization (fundamental)
Feb 25
Project proposal due
Week 6 Mar 2
Lec 5: Memory virtualization (advanced) [slides] [slides+notes]
Reading: Beyond physical memory: Mechanisms, (Caching) Policy
Mar 4
Week 7 Mar 9
Mini exam 1 (7:20pm - 7:50pm)
Lec 6: Concurrency I [slides] [slides+notes]
Reading: Threads, Concurrency intro, Locks, and Semaphores
Mar 11
Week 8 Mar 16
Spring recess
Mar 18
Week 9 Mar 23
Lec 7: Concurrency II [slides] [slides+notes]
Reading: CV, Deadlocks
Mar 25
Project checkpoint 1 due
Week 10 Mar 30
Lec 8: Persistence (fundamental): HDD, SSD, FS abstraction [slides] [pptx+notes]
Reading: HDDs, SSDs, and File system intro
Apr 1
Week 11 Apr 6
Lec 9: Persistence (advanced): FS impl, RAID, InfiniCache [lecture slides] [infinicache slides]
Reading: file system implementation, and RAID
Apr 8
Week 12 Apr 13
Mini exam 2 (7:20pm - 8:20pm)
Lec 10: Virtualization (VM, container)
Apr 15
Project checkpoint 2 due
Week 13 Apr 20
Lec 11: MapReduce, GFS [slides] [slides+notes]
Reading: MapReduce+GFS paper [reading list]
Apr 22
Week 14 Apr 27
Lec 12: Spark (Resilient Distributed Datasets) [slides (pdf)] [slides (pptx)] [pptx+notes]
PageRank example (slides #43-44) [notes]
Reading: Spark paper [reading list]
Apr 29
Week 15 May 4
Final project presentation (Session I)
Mini exam 3 (12am, 05/04 - 11:59pm, 05/06)
May 6
Final project presentation (Session II)
Week 16 May 11
Project everything due
May 13

*: Color codings:

-CPU Virtualization- -Memory Virtualization- -Concurrency- -Persistence- -VMs/Containers- -Distributed Systems-