Monday | Tuesday | Wednesday | Thursday | Friday | ||
aug 31 Reg Day |
sep 1 | sep 2 LEC 1 (rtm): Introduction and examples (handouts: xv6 book) video Preparation: Read chapter 1 (for your amusement: Unix) Homework 1 due: Question Assignment: Lab util: Unix utilities |
sep 3 | sep 4 | ||
sep 7 Labor Day |
sep 8 | sep 9 LEC 2 (TAs/dm): C and gdb (pointers example) 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) Assignment: Lab syscall: System calls |
sep 10 DUE: Lab util |
sep 11 | ||
sep 14 LEC 3 (fk): OS organization and system calls (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 |
sep 15 | sep 16 LEC 4 (fk): Page tables (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 Assignment: Lab pgtbl: Page tables |
sep 17 DUE: Lab syscall |
sep 18 | ||
sep 21 LEC 5 (TAs/nk): Calling conventions and stack frames RISC-V (slides) video Preparation: Read Calling Convention |
sep 22 | sep 23 LEC 6 (rtm): Isolation & system call entry/exit (video) Preparation: Read Chapter 4, except 4.6 and kernel/riscv.h, kernel/trampoline.S, and kernel/trap.c Homework 4 due: Question Assignment: Lab traps: Trap |
sep 24 DUE: Lab pgtbl |
sep 25 | ||
sep 28 LEC 7 (fk): Q&A labs (boards) video Homework 5 due: Question |
sep 29 | sep 30 LEC 8 (fk): Page faults (boards) video Preparation: Read Section 4.6 Homework 6 due: Question Assignment: Lab lazy: Lazy allocation |
oct 1 DUE: Lab trap |
oct 2 ADD DATE |
||
oct 5 LEC 9 (fk): Interrupts (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 |
oct 6 | oct 7 LEC 10 (fk): Multiprocessors and locking (boards) video Preparation: Read "Locking" with kernel/spinlock.h and kernel/spinlock.c Homework 8 due: Question Assignment: Lab cow: Copy-on-write fork |
oct 8 DUE: Lab lazy |
oct 9 | ||
oct 12 Indigenous Peoples Day |
oct 13 Monday schedule Hacking day: no class meeting; work on the lab |
oct 14 LEC 11 (rtm): Thread switching (video) Preparation: Read "Scheduling" through Section 7.4, and kernel/proc.c, kernel/swtch.S Homework 9 due: Question Assignment: Lab thread: Multithreading |
oct 15 DUE: Lab cow |
oct 16 | ||
oct 19 LEC 12 (rtm): Q&A labs (video) Homework 10 due: Question |
oct 20 | oct 21 LEC 13 (rtm): sleep&wakeup and code (video) Preparation: Read remainder of "Scheduling", and corresponding parts of kernel/proc.c, kernel/sleeplock.c Homework 11 due: Question Assignment: Lab lock: Parallelism/locking |
oct 22 DUE: Lab thread |
oct 23 | ||
oct 26 LEC 14 (fk): File systems (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 |
oct 27 | oct 28 LEC 15 (fk): Crash recovery (boards) video Preparation: Read kernel/log.c and the logging sections of "File system" Homework 13 due: Question Assignment: Lab fs: File system |
oct 29 DUE: lab lock |
oct 30 | ||
nov 2 LEC 16 (rtm): File system performance and fast crash recovery (video) Preparation: Read Journaling the Linux ext2fs Filesystem (1998) Homework 14 due: Question |
nov 3 | nov 4 LEC 17 (fk): Virtual memory for applications (boards) (sqrt example) (baker example) video Preparation: Read Virtual Memory Primitives for User Programs (1991) Homework 15 due: Question Assignment: Lab mmap: Mmap |
nov 5 DUE: Lab fs |
nov 6 | ||
nov 9 LEC 18 (rtm): OS Organization (video) Preparation: Read The Performance of micro-Kernel-Based Systems (1997) Homework 16 due: Question |
nov 10 | nov 11 Veteran's Day |
nov 12 | nov 13 | ||
nov 16 LEC 19 (rtm): Virtual Machines (video) Preparation: Read Dune: Safe User-level Access to Privileged CPU Features (2012) Homework 17 due: Question |
nov 17 | nov 18 DROP DATE LEC 20 (fk): Kernels and HLL (slides) video Preparation: Read the Biscuit paper (2018), FAQ Homework 18 due: Question Assignment: Lab net: Network stack |
nov 19 DUE: Lab mmap |
nov 20 | ||
nov 23 - nov 29 Thanksgiving |
||||||
nov 30 LEC 21 (rtm): Networking (video) Preparation: Read Receive Livelock (1996) Homework 19 due: Question |
dec 1 | dec 2 LEC 22 (rtm): Meltdown (video) Preparation: Read Meltdown (2018) Homework 20 due: Question |
dec 3 | dec 4 | ||
dec 7 LEC 23 (rtm): RCU notes, 2018 slides (video) Preparation: Read RCU paper (2013), FAQ Homework 21 due: Question |
dec 8 DUE: Lab net |
dec 9 LAST DAY OF CLASSES LEC 24 (fk): Q&A (video) Homework 22 due: Question |
dec 10 | dec 11 |
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 Wednesday, 09-Dec-2020 18:30:26 EST