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

MondayTuesday WednesdayThursday Friday
sep 3 sep 4
Reg Day
sep 5
LEC 1: Operating systems (handouts: xv6 source, xv6 book)
Preparation: Look over the xv6 book and source. We will cover chapter 0 today.
In class: shell exercises
Assignment: Lab 1: C, Assembly, Tools, and Bootstrapping
sep 6 sep 7
sep 10
LEC 2: PC hardware and x86 programming slides, notes
Preparation: Read Bootstrap/PC hardware appendices and the related xv6 source files
In class: Boot xv6 exercise
sep 11 sep 12
LEC 3: Overview of major internals, system call interface
Preparation: Read "Chapter 1: The first process" and the related xv6 source files
In class: trace system calls; add halt
Assignment: Lab 2: Memory management
sep 13
DUE: Lab 1
sep 14
sep 17
LEC 4: Virtual memory (handouts: page table translation and registers)
Preparation: Read "Chapter 2: Page Tables"
In class: lazy page allocation
sep 18 sep 19
LEC 5: Interrupts, exceptions (handouts: IDT)
Preparation: Read "Traps, interrupts, and drivers" and the related xv6 source files
In class: xv6 CPU alarm
sep 20 sep 21
Student holiday
sep 24
LEC 6: Multiprocessors and locking
Preparation: Read "Locking" with spinlock.c and skim mp.c
In class: locks
sep 25 sep 26
LEC 7: Processes and switching
Preparation: Read "Scheduling" up to "Sleep and wakeup" with proc.c, setjmp.S, and sys_fork (in sysproc.c)
In class: uthreads
Assignment: Lab 3: User-Level Environments
sep 27
DUE: Lab 2
sep 28
oct 1
LEC 8: sleep&wakeup
Preparation: Read remainder of "Scheduling"; read remainder of proc.c and sys_wait, sys_exit, sys_kill
In class: barrier
oct 2 oct 3
LEC 9: File systems
Preparation: Read bio.c, fs.c, sysfile.c, file.c and "File system" except for the logging sections
In class: big files
oct 4
DUE: Lab 3 (Part A)
oct 5
ADD DATE
oct 8 - oct 9
Columbus Day
oct 10
LEC 10: Crash recovery
Preparation: Read log.c and the logging sections of "File system"
In class: crash
Assignment: Lab 4: Preemptive Multitasking
oct 11
DUE: Lab 3 (Part B)
oct 12
oct 15
LEC 11: File system performance and fast crash recovery
Preparation: Read Journaling the Linux ext2fs Filesystem; do Homework 11
oct 16 oct 17
LEC 12: Project introduction and discussion
Preparation: Read project assignment
oct 18
DUE: Lab 4 (Part A)
oct 19
oct 22
LEC 13: OS Organization
Preparation: Read Exokernel; do Homework 13
oct 23 oct 24
LEC 14: In-class hacking session
oct 25
DUE: Lab 4 (Part B)
oct 26
oct 29
Lecture cancelled due to Hurricane Sandy
oct 30 oct 31
LEC 15: Project conferences
Assignment: Lab 5: Spawn and shell
nov 1
DUE: Lab 4 (Part C)
nov 2
nov 5
LEC 16: Project conferences
nov 6 nov 7
LEC 17: Language/OS co-design
Preparation: Read Singularity; no homework
nov 8
DUE: Lab 5
nov 9
nov 12
Veteran's Day
nov 13 nov 14
QUIZ open book and notes
scope: Lectures 1 through 17, labs 1 through 5
practice: previous years' quizzes.
nov 15 nov 16
nov 19
LEC 18: Scalable locks (code)
Preparation: Read Non-scalable locks paper; do Homework 18
nov 20 nov 21
DROP DATE
LEC 19: Project conferences
DUE: initial project demo
nov 22 - nov 23
Thanksgiving
nov 26
LEC 20: Project conferences
nov 27 nov 28
LEC 21: Lock-free coordination
Preparation: Read Linux Scalability; do Homework 21
nov 29 nov 30
dec 3
LEC 22: Virtual Machines
Preparation: Read Software vs Hardware Virtualization; do Homework 22
dec 4 dec 5
LEC 23: No lecture; work on final projects
dec 6 dec 7
dec 10
LEC 24: demos in class
Project conferences
dec 11 dec 12
LAST DAY OF CLASSES
LEC 25: demos in class
Project conferences
dec 13 dec 14

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, 15-May-2017 22:34:16 EDT