CS 571 Operating Systems (Spring 2021)

Course Schedule

The course schedule is tentative and subject to change*.

Please enter the composition of your team (for Project 3-5) by filling this Google Form. Each team can have at most 2 people, and 2) if you choose to work as a team, only one team member needs to fill this form.

WeekWednesday Friday
Week 1 Jan 27
Lec 1: Introduction, process abstraction [slides]
Reading: Intro and Process and Process API
Proj 0a and Proj 0b out
Jan 29
Week 2 Feb 3
Lec 2a: LDE [slides]
Lec 2b: CPU virtualization I [slides]
Lec 2's note [note]
Reading: LDE and Scheduling (intro)
Feb 5
Proj 0a due
Proj 1 out
Week 3 Feb 10
Lec 3: CPU virtualization II [slides]
Lec 3's note [note]
Reading: MLFQ, Multi-core Sched (Linux), man 7 sched, and Lottery (optional)
Feb 12
Week 4 Feb 17
Lec 4: Memeory virtualization I [slides]
Lec 4's note [note]
Reading: Address spaces, Address translation, Paging, TLB, and Adv. PTs
Feb 19
Week 5 Feb 24
Lec 5: Memory virtualization II [slides]
Lec 5's note [note]
Reading: Beyond physical memory: Mechanisms, (Caching) Policy, and ARC paper (FAST'03)
Feb 26
Proj 1 due
Proj 2 out
Week 6 Mar 3
Lec 6: Midterm review [slides] [slides+notes]
Mar 5
Week 7 Mar 10
Midterm exam
Mar 12
Midterm stats
Week 8 Mar 17
Lec 7: Concurrency I [slides]
Lec 7's note [note]
Reading: Threads, Concurrency intro, Locks, and Semaphores
Mar 19
Proj 2 due
Proj 3 out
Week 9 Mar 24
Lec 8: Concurrency II [slides]
Lec 8's note [note]
Reading: CV, Deadlocks
Mar 26
Proj 2 due
Proj 3 out
Week 10 Mar 31
Lec 9: Persistence I [slides]
Lec 9's note [note]
Reading: HDDs, Disk sched, and SSDs
Apr 2
Go basics: Go tutorial [video]
[slides] [handout1] [handout2]
Week 11 Apr 7
Lec 10: Persistence II [slides] [slides+notes]
Reading: File system intro, file system implementation, and RAID
Apr 9
Proj 0b due
Week 12 Apr 14
Lec 11: Distributed systems I: RPC, MapReduce [slides]
Reading: MapReduce paper
Apr 16
Proj 3 due
Proj 4 out
Week 13 Apr 21
Lec 12: Distributed systems II: GFS, NFS [slides]
Lec 12's note [note]
Reading: GFS paper, and NFS
Apr 23
Proj 5 out
Week 14 Apr 28
Final review [slides] [slides+notes]
Apr 30
Week 15 May 5
Final exam 7:20 pm - 10:00 pm
May 7
Proj 4 due
Proj 5 due

*: Color codings:

-Virtualization- -Concurrency- -Persistence- -Distributed Systems-