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
1 1
Mon, Nov 27 2023
OS Introduction
WSL2 Install DUE Mon, Nov 27 2023 23:59 No submission needed
2
Tue, Nov 28 2023
C Review
3
Thu, Nov 30 2023
The Process Abstraction
C Review & xv6 Introduction DUE Thu, Nov 30 2023 23:59 Submission box
4
Fri, Dec 01 2023
Operations on Processes
2 5
Mon, Dec 04 2023
IPC: Signals
Simple Shell DUE Mon, Dec 04 2023 23:59 Submission box
6
Tue, Dec 05 2023
IPC: Pipes
7
Thu, Dec 07 2023
Makefiles
Process Lab DUE Thu, Dec 07 2023 23:59 Submission box
8
Fri, Dec 08 2023
Hacking Day: Heap Manager
3 9
Mon, Dec 11 2023
Introduction to Paging
Heap Manager DUE Mon, Dec 11 2023 23:59 Submission box
10
Tue, Dec 12 2023
Paging
11
Thu, Dec 14 2023
Exam Review
12
Fri, Dec 15 2023
Exam 1: Part 1
4 13
Mon, Dec 18 2023
Multi-level Page Tables
14
Tue, Dec 19 2023
Lazy page allocation activity
15
Thu, Dec 21 2023
Exam 1: Part 2
16
Fri, Dec 22 2023
No class, enjoy the break
[Challenge] Heap Manager II DUE Fri, Dec 22 2023 23:59 Submission box grader: @TBA
5 17
Mon, Jan 08 2024
Interrupts and Traps Activity
18
Tue, Jan 09 2024
Threads: Lightweight Processes
19
Thu, Jan 11 2024
Concurrency: Mutex & Condition Variables Activity
[Challenge] Copy-on-Write DUE Thu, Jan 11 2024 23:59 Submission box grader: @TBA
20
Fri, Jan 12 2024
Mutex locks practice Activity
6 21
Mon, Jan 15 2024
Concurrency: Condition Variables Activity
Threads & Mutex Basics DUE Mon, Jan 15 2024 23:59 Submission box grader: @TBA
22
Tue, Jan 16 2024
Concurrency: Condition Variables Practice Activity
23
Thu, Jan 18 2024
Concurrency: Producer-consumer Problem Activity
Condition Variables Basics DUE Thu, Jan 18 2024 23:59 Submission box grader: @TBA
24
Fri, Jan 19 2024
Concurrency: Readers/Writers Problem Activity
7 25
Mon, Jan 22 2024
CPU Scheduling I
[Challenge] Condition Variables II DUE Mon, Jan 22 2024 23:59 Submission box grader: @TBA
26
Tue, Jan 23 2024
The xv6 scheduler
27
Thu, Jan 25 2024
Exam 2 Review
28
Fri, Jan 26 2024
Exam 2 Part 1
8 29
Mon, Jan 29 2024
Introduction to Memory Safety
Scheduler Activity DUE Mon, Jan 29 2024 23:59 Submission box grader: @TBA
30
Tue, Jan 30 2024
Stack Smashing and Its Variants
31
Thu, Feb 01 2024
Return-to-libc Attacks
32
Fri, Feb 02 2024
Exam 2 Part 2
9 33
Mon, Feb 05 2024
Return-Oriented-Programming and Wrap-up
Stack Smashing Lab DUE Mon, Feb 05 2024 23:59 Submission box grader: @TBA
34
Tue, Feb 06 2024
File Systems
35
Thu, Feb 08 2024
Project Work Time
Project Milestone 1 DUE Thu, Feb 08 2024 23:59 Submission box grader: @TBA
36
Fri, Feb 09 2024
Project Work Time and Meetings
10 37
Mon, Feb 12 2024
Lab: ext2 file system
[Challenge] ext2 File System DUE Mon, Feb 12 2024 23:58 Submission box grader: @TBA
38
Tue, Feb 13 2024
Project Work Time and Meetings
39
Thu, Feb 15 2024
Project Work Time and Meetings
40
Fri, Feb 16 2024
Project Work Time and Meetings
Project Milestone 2 DUE Fri, Feb 16 2024 23:59 Submission box grader: @TBA