Monday | Tuesday |
Wednesday | Thursday |
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. |