Class Schedule

The following table outlines the schedule of lectures and assignments for the course. It should give you a good idea on the load expected in this class on a week by week basis. However, we reserve the right to change the order of lectures and/or assignments with an advanced week’s notice.

Jump to week: 0 1 2 3 4 5 6 7 8 9 10

Week Session Reading Topics Material
0 1
Thu, Jun 05 2025
C Review (Part 1)
WSL2 Install DUE Thu, Jun 05 2025 23:59 No submission needed
2
Fri, Jun 06 2025
C Review (Part 2)
C Assessment Quiz DUE Fri, Jun 06 2025 23:59 Moodle Quiz
1 3
Mon, Jun 09 2025
The Process Abstraction
Lab01: C Review & xv6 Introduction DUE Mon, Jun 09 2025 23:59 Submission box
4
Tue, Jun 10 2025
Operations on Processes
5
Thu, Jun 12 2025
IPC: Signals
Lab02: Simple Shell DUE Thu, Jun 12 2025 23:59 Submission box
6
Fri, Jun 13 2025
IPC: Pipes
2 7
Mon, Jun 16 2025
C debugging
Lab03: Process Lab DUE Mon, Jun 16 2025 23:59 Submission box
8
Tue, Jun 17 2025
Debugging in xv6
9
Fri, Jun 20 2025
Heap Manager Lab Walkthrough
Lab04: Debugging Lab DUE Fri, Jun 20 2025 23:59 Submission box
3 10
Mon, Jun 23 2025
Interrupts and Traps
[Challenge] Lab05: Heap Manager I DUE Mon, Jun 23 2025 23:59 Submission box
11
Tue, Jun 24 2025
Implementing system calls Activity
12
Thu, Jun 26 2025
Exam 1 Review
13
Fri, Jun 27 2025
No class, Exam 1
4 14
Mon, Jun 30 2025
Introduction to Paging
15
Tue, Jul 01 2025
Paging
16
Thu, Jul 03 2025
Lazy page allocation activity
5 17
Mon, Jul 07 2025
Exam 1 Part 2
18
Tue, Jul 08 2025
Multi-level Page Tables
19
Thu, Jul 10 2025
Threads: Lightweight Processes
20
Fri, Jul 11 2025
Concurrency: Mutex & Condition Variables
6 21
Mon, Jul 21 2025
Locks and Condition Variables
22
Tue, Jul 22 2025
Concurrency: Producer-consumer Problem
23
Thu, Jul 24 2025
Concurrency: Readers/Writers Problem
24
Fri, Jul 25 2025
Concurrency: Condition Variables Practice
7 25
Mon, Jul 28 2025
Concurrency: Condition Variables Practice Activity
26
Tue, Jul 29 2025
Lab: Userspace Threads
27
Thu, Jul 31 2025
Milestone 1 Demo Day
28
Fri, Aug 01 2025
Exam 2 Review and Practice
8 29
Mon, Aug 04 2025
Exam 2 Part 1
30
Tue, Aug 05 2025
CPU Scheduling I
31
Thu, Aug 07 2025
The xv6 scheduler
32
Fri, Aug 08 2025
File Systems
9 33
Mon, Aug 11 2025
Exam 2 Part 2
34
Tue, Aug 12 2025
File Systems II
35
Thu, Aug 14 2025
Milestone 2 Demo Day
36
Fri, Aug 15 2025
Lab: ext2 file system
10 37
Mon, Aug 18 2025
Special Topics in OS
38
Tue, Aug 19 2025
Special Topics in OS
39
Thu, Aug 21 2025
Milestone 3 Demo Day
40
Fri, Aug 22 2025
Project Work Time (Demo Continued)