Fall 2010
xv6
Creative Commons License
Links to notes etc. on future days are copies of materials from 2009 to give you an idea what the future will bring. We will update the notes as the course progresses.

MondayTuesday WednesdayThursday Friday
sep 6 sep 7
Reg Day
sep 8
LEC 1: Operating systems (handout) (Unix chapter and sh.c)
Preparation: Read The Evolution of the Unix Time-Sharing System
Assignment: Lab 1: C, Assembly, Tools, and Bootstrapping
sep 9 sep 10
sep 13
LEC 2: PC hardware and x86 programming
Preparation: Read Bootstrap chapter and the related xv6 source files; do Homework 1
sep 14 sep 15
LEC 3: OS Organization
Preparation: Read Exokernel; do Homework 2
Assignment: Lab 2: Memory management
sep 16
DUE: Lab 1
sep 17
sep 20
LEC 4: Processes and page tables (handouts: registers, page table translation)
Preparation: Read Processes chapter and the related xv6 source files; do Homework 3
sep 21 sep 22
LEC 5: Fork/exec
Preparation: Read Exec chapter; do Homework 4
sep 23 sep 24
sep 27
LEC 6: JOS memory layout and System call, Interrupt, and Exception Handling (handouts: JOS memory layout, IDT)
Preparation: Read chapter on System call, interrupt, and exceptions, and the related xv6 source files; do Homework 5
sep 28 sep 29
LEC 7: Multiprocessors and locking
Preparation: Read locking with spinlock.c and skim mp.c; do Homework 6
Assignment: Lab 3: User-Level Environments
sep 30
DUE: Lab 2
oct 1
oct 4
Hacking Day
oct 5 oct 6
LEC 8: Process scheduling
Preparation: Read chapter on Scheduling through section "Code: scheduling" with proc.c, setjmp.S, and sys_fork (in sysproc.c); do Homework 7
oct 7
DUE: Lab 3 (Part A)
oct 8
ADD DATE
oct 11
Columbus Day Holiday
oct 12 oct 13
LEC 9: Processes and coordination
Preparation: Read remainder of chapter on Scheduling; read remainder of proc.c and sys_wait, sys_exit, sys_kill; do Homework 8
Assignment: Lab 4: Preemptive Multitasking
oct 14
DUE: Lab 3 (Part B)
oct 15
oct 18
LEC 10: Files and disk I/O
Preparation: readi, writei, filewrite, fileread, dirlink, create, and code related to these system calls in fs.c, bio.c, ide.c, sysfile.c, and file.c. The draft chapters commenting on the code are Buffer cache and File system representation; do Homework 9
oct 19 oct 20
LEC 11: Naming
Preparation: Read namei in fs.c (and remainder of fs.c), sysfile.c, file.c. The draft chapter commenting on the code is File system calls.; do Homework 10
oct 21
DUE: Lab 4 (Part A)
oct 22
oct 25
QUIZ #1: Mid-term quiz during lecture time
open book and notes
scope: Lectures 1-11, xv6, and labs
practice: previous years' quizzes.
oct 26 oct 27
LEC 12: File system performance and crash recovery
Preparation: Read Journaling the Linux ext2fs Filesystem; do Homework 11
oct 28
DUE: Lab 4 (Part B)
oct 29
nov 1
LEC 13: Performance and durability
Preparation: Read Rethink the sync; no homework
nov 2 nov 3
LEC 14: Scheduling
Preparation: Read Eliminating Receive Livelock; do Homework 13
Assignment: Lab 5: File system and Spawn
nov 4
DUE: Lab 4 (Part C)
nov 5
nov 8
LEC 15: Microkernels and capabilities
Preparation: Read KeyKOS, Confused deputy; do Homework 14
nov 9 nov 10
LEC 16: Language/OS co-design
Preparation: Read Singularity and Language Support for Message-based Communication; no homework
Assignment: Lab 6: Network Driver
nov 11
Veteran's Day Holiday
nov 12
DUE: Lab 5
nov 15
LEC 17: Multi-processor coordination: scalable locks (handout, code)
Preparation: Read Spin Lock Alternatives; do Homework 16
nov 16 nov 17
LEC 18: Multi-processor coordination: lock free
Preparation: Read Read-Copy Update; do Homework 17
DROP DATE
nov 18
DUE: Lab 6 (Part A)
nov 19
Assignment: Lab 7: Final Project
nov 22
LEC 19: Multikernel operating systems (AMD slides, source, IPC latency and L2 misses)
Preparation: Read Barrelfish; do Homework 18
nov 23 nov 24
LEC 20: Deterministic Parallelism
Preparation: Read Determinator; do Homework 19
DUE: Lab 6 (Part B)
nov 25 - nov 26
Thanksgiving
nov 29
LEC 21: Virtual Machines
Preparation: Read Software vs Hardware Virtualization; Homework: final project proposal
nov 30 dec 1
LEC 22: Using virtual machines
Preparation: Read Execution Replay for Multiprocessor Virtual Machines; do Homework 21
dec 2 dec 3
DUE: Lab 7
dec 6
LEC 23: Rebootless updates (guest lecture)
Preparation: Read Ksplice
dec 7 dec 8
LEC 24: OS Bakeoff
dec 9 dec 10
dec 13 dec 14 dec 15 dec 16
QUIZ #2: 1:30pm–4:30pm in du Pont
open book and notes
scope: Lectures 12-22, labs 4-7
practice: previous years' quizzes.

Questions or comments regarding 6.828? Send e-mail to the TAs at 6.828-staff@pdos.csail.mit.edu.

Top // 6.828 home // Last updated Monday, 21-Oct-2019 19:02:10 EDT