Links to notes, videos etc. on future days are copies of materials from the 2020 version of 6.S081. We will update the notes as the course progresses. The lecture notes may help you remember the lecture content, but they are not a replacement for attending lectures.
| Monday | Tuesday | Wednesday | Thursday | Friday |
| sep 6 Labor Day |
sep 7 Reg Day |
sep 8 LEC 1 (ab): Introduction and examples (handouts: xv6 book; 2020: notes, video) Preparation: Read chapter 1 (for your amusement: Unix) Homework 1 due: Question Assignment: Lab util: Unix utilities |
sep 9 | sep 10 |
| sep 13 LEC 2 (TAs): C and gdb Preparation: 2.9 (Bitwise operators) and 5.1 (Pointers and addresses) through 5.6 (Pointer arrays) and 6.4 (pointers to structures) by Kernighan and Ritchie (K&R) |
sep 14 | sep 15 LEC 3 (ab): OS organization and system calls (2020: notes, boards, video) Preparation: Read chapter 2 and xv6 code: kernel/proc.h, kernel/defs.h, kernel/entry.S, kernel/main.c, user/initcode.S, user/init.c, and skim kernel/proc.c and kernel/exec.c Homework 2 due: Question Assignment: Lab syscall: System calls |
sep 16 DUE: Lab util |
sep 17 |
| sep 20 LEC 4 (ab): Page tables (2020: notes, boards, video) Preparation: Read Chapter 3 and kernel/memlayout.h, kernel/vm.c, kernel/kalloc.c, kernel/riscv.h, and kernel/exec.c Homework 3 due: Question |
sep 21 | sep 22 LEC 5 (TAs): GDB, calling conventions and stack frames RISC-V (2020: notes, boards, video) Preparation: Read Calling Convention Assignment: Lab pgtbl: Page tables |
sep 23 DUE: Lab syscall |
sep 24 |
| sep 27 LEC 6 (ab): Isolation & system call entry/exit (2020: notes, video) Preparation: Read Chapter 4, except 4.6 and kernel/riscv.h, kernel/trampoline.S, and kernel/trap.c Homework 4 due: Question |
sep 28 | sep 29 LEC 7 (ab): Page faults (2020: notes, boards, video) Preparation: Read Section 4.6 Homework 5 due: Question Assignment: Lab traps: Traps |
sep 30 DUE: Lab pgtbl |
oct 1 |
| oct 4 LEC 8 (ab): Q&A labs Homework 6 due: Question |
oct 5 | oct 6 LEC 9 (ab): Interrupts (2020: notes, boards, video) Preparation: Read Chapter 5 and kernel/kernelvec.S, kernel/plic.c, kernel/console.c, kernel/uart.c, kernel/printf.c Homework 7 due: Question Assignment: Lab cow: Copy-on-write fork |
oct 7 DUE: Lab traps |
oct 8 ADD DATE |
| oct 11 Indigenous Peoples Day |
oct 12 | oct 13 LEC 10 (ab): Multiprocessors and locking (2020: notes, boards, video) Preparation: Read "Locking" with kernel/spinlock.h and kernel/spinlock.c Homework 8 due: Question |
oct 14 | oct 15 |
| oct 18 LEC 11 (ab): Scheduling 1 (2020: notes, video) Preparation: Read "Scheduling" through Section 7.4, and kernel/proc.c, kernel/swtch.S Homework 9 due: Question |
oct 19 | oct 20 LEC 12 (ab): Scheduling 2 (2020: notes, code, video) Preparation: Read remainder of "Scheduling", and corresponding parts of kernel/proc.c, kernel/sleeplock.c Homework 10 due: Question Assignment: Lab thread: Multithreading |
oct 21 DUE: Lab cow |
oct 22 |
| oct 25 LEC 13 (ab): Q&A labs Homework 11 due: Question |
oct 26 | oct 27 LEC 14 (ab): File systems (2020: notes, boards, video) Preparation: Read kernel/bio.c, kernel/fs.c, kernel/sysfile.c, kernel/file.c and "File system" (except for the logging sections) Homework 12 due: Question Assignment: Lab net: Network driver |
oct 28 DUE: Lab thread |
oct 29 |
| nov 1 LEC 15 (ab): Crash recovery (2020: notes, boards, video) Preparation: Read kernel/log.c and the logging sections of "File system" Homework 13 due: Question |
nov 2 | nov 3 LEC 16 (ab): File system performance and fast crash recovery (2020: notes, video) Preparation: Read Journaling the Linux ext2fs Filesystem (1998) Homework 14 due: Question |
nov 4 | nov 5 |
| nov 8 LEC 17 (ab): Virtual memory for applications (2020: notes, boards, video) (baker example) Preparation: Read Virtual Memory Primitives for User Programs (1991) Homework 15 due: Question |
nov 9 DUE: Lab net |
nov 10 LEC 18 (ab): OS Organization (2020: notes, video) Preparation: Read The Performance of micro-Kernel-Based Systems (1997) Homework 16 due: Question Assignment: Lab lock: Parallelism/locking |
nov 11 Veteran's Day |
nov 12 |
| nov 15 LEC 19 (ab): Virtual Machines (2020: notes, video) Preparation: Read Dune: Safe User-level Access to Privileged CPU Features (2012) Homework 17 due: Question |
nov 16 | nov 17 LEC 20 (ab): Kernels and HLL] (2020: notes, slides, video) Preparation: Read the Biscuit paper (2018), FAQ Homework 18 due: Question Assignment: Lab fs: File system |
nov 18 DROP DATE DUE: Lab lock |
nov 19 |
| nov 22 LEC 21 (ab): Networking (2020: notes, video) Preparation: Read Receive Livelock (1996) Homework 19 due: Question |
nov 23 | nov 24 Hacking day: no class meeting; work on the lab DUE: Lab fs Assignment: Lab mmap: Mmap |
nov 25 - nov 26 Thanksgiving |
|
| nov 29 LEC 22 (ab): Meltdown (2020: notes, video) Preparation: Read Meltdown (2018) Homework 20 due: Question |
nov 30 | dec 1 LEC 23 (ab): Multi-Core scalability and RCU (2020: notes, video) Preparation: Read RCU paper (2013), FAQ Homework 21 due: Question |
dec 2 | dec 3 |
| dec 6 LEC 24 (TAs): Current Research: Radiation Tolerance Preparation: Read NASA CALIPSO paper (2006) for background Homework 22 due: Question |
dec 7 DUE: Lab mmap |
dec 8 LEC 25 (ab): Q&A Homework 23 due: Question |
dec 9 LAST DAY OF CLASSES |
dec 10 |
Questions or comments regarding S6.081? Send e-mail to the course staff at
6S081@lists.csail.mit.edu.
Top //
S6.081 home //
Last updated Monday, 06-Dec-2021 00:41:21 EST