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 |