Links to notes, videos etc. on future days are copies of materials from the 2023 version of 6.1810. 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.

MondayTuesday WednesdayThursday Friday
sep 2
Labor Day
sep 3
Reg Day
sep 4
LEC 1 (rtm): Introduction and examples (handouts: xv6 book)
Preparation: Read chapter 1 (for your amusement: Unix)
Assignment: Lab util: Unix utilities
sep 5 sep 6
sep 9
LEC 2 (fk): C in xv6, slides, and examples
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 10 sep 11
LEC 3 (fk): OS design
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 1 due: Question
Assignment: Lab syscall: System calls
sep 12
DUE: Lab util
sep 13
sep 16
LEC 4 (fk): page tables
Preparation: Read Chapter 3 and kernel/memlayout.h, kernel/vm.c, kernel/kalloc.c, kernel/riscv.h, and kernel/exec.c
Homework 2 due: Question
sep 17 sep 18
LEC 5 (rtm): System call entry/exit
Preparation: Read Chapter 4, except 4.6 and kernel/riscv.h, kernel/trampoline.S, and kernel/trap.c
Homework 3 due: Question
Assignment: Lab pgtbl: Page tables
sep 19
DUE: Lab syscall
sep 20
sep 23
LEC 6 (TAs): GDB Calling conventions (slides)
Preparation: Read Calling Convention
sep 24 sep 25
LEC 7 (fk): Page faults (slides)
Preparation: Read Section 4.6
Homework 4 due: Question
Assignment: Lab traps: Traps
sep 26
DUE: Lab pgtbl
sep 27
sep 30
LEC 8 (fk): Q&A labs (slides)
Homework 5 due: Question
oct 1 oct 2
LEC 9 (fk): Device drivers
Preparation: Read Chapter 5 and kernel/kernelvec.S, kernel/plic.c, kernel/console.c, kernel/uart.c, kernel/printf.c
Homework 6 due: Question
Assignment: Lab cow: Copy-on-write fork
oct 3
DUE: Lab traps
oct 4
ADD DATE
oct 7
LEC 10 (fk): Locking
Preparation: Read "Locking" with kernel/spinlock.h and kernel/spinlock.c
Homework 7 due: Question
oct 8 oct 9
LEC 11 (rtm): Scheduling 1
Preparation: Read "Scheduling" through Section 7.4, and kernel/proc.c, kernel/swtch.S
Homework 8 due: Question
oct 10 oct 11
oct 14
Indigenous Peoples Day
oct 15 oct 16
LEC 12 (rtm): Coordination, code
Preparation: Read remainder of "Scheduling", and corresponding parts of kernel/proc.c, kernel/sleeplock.c
Homework 9 due: Question
oct 17
DUE: Lab cow
oct 18
oct 21
LEC 13 (fk): File systems (slides)
Preparation: Read kernel/bio.c, kernel/fs.c, kernel/sysfile.c, kernel/file.c and "File system" (except for the logging sections)
Homework 10 due: Question
oct 22 oct 23
Midterm open book and notes
scope: Lectures 1 through 12, labs through lab cow
practice: previous quizzes.
Assignment: Lab net: Network driver
oct 24 oct 25
oct 28
LEC 14 (fk): Crash recovery (slides)
Preparation: Read kernel/log.c and the logging sections of the "File system" chapter
Homework 11 due: Question
oct 29 oct 30
LEC 15 (rtm): File system performance and fast crash recovery
Preparation: Read Journaling the Linux ext2fs Filesystem (1998)
Homework 12 due: Question
oct 31 nov 1
nov 4
Hacking day: no class meeting; work on the lab
Assignment: Lab lock: Parallelism/locking
nov 5
DUE: Lab net
nov 6
Hacking day: no class meeting; work on the lab
nov 7 nov 8
nov 11
Veteran's Day
nov 12 nov 13
LEC 16 (fk): Virtual memory for applications (baker example) (slides)
Preparation: Read Virtual Memory Primitives for User Programs (1991)
Homework 13 due: Question
Assignment: Lab fs: File system
nov 14
DUE: Lab lock
nov 15
nov 18
LEC 17 (rtm): OS Organization
Preparation: Read The Performance of micro-Kernel-Based Systems (1997)
Homework 14 due: Question
nov 19 nov 20
DROP DATE
LEC 18 (rtm): Virtual Machines
Preparation: Read Dune: Safe User-level Access to Privileged CPU Features (2012)
Homework 15 due: Question
Hacking day: no class meeting; work on the lab
Assignment: Lab mmap: Mmap
nov 21
DUE: Lab fs
nov 22
nov 25
LEC 19 (fk): Kernels and HLL
Preparation: Read the Biscuit paper (2018), FAQ
Homework 16 due: Question
nov 26 nov 27
LEC 20 (rtm): Networking
Preparation: Read Receive Livelock (1996)
Homework 17 due: Question
nov 28 - nov 29
Thanksgiving
dec 2
LEC 21 (rtm): Meltdown
Preparation: Read Meltdown (2018)
Homework 18 due: Question
dec 3 dec 4
Hacking day: no class meeting; work on the lab
dec 5 dec 6
DUE: Lab mmap
dec 9
LEC 22 (rtm): Multi-Core scalability and RCU
Preparation: Read RCU paper (2013), FAQ
Homework 19 due: Question
dec 10 dec 11
LAST DAY OF CLASSES
LEC 23 (tbd): Current Research
dec 12 dec 13
dec 16 - dec 20
Final in finals week


Questions or comments regarding 6.1810? Send e-mail to the course staff at 61810-staff@lists.csail.mit.edu.

Creative Commons License Top // 6.1810 home // Last updated Thursday, 12-Sep-2024 20:05:38 EDT