Monday | Tuesday | Wednesday | Thursday | Friday |
sep 1 |
sep 2 Reg Day |
sep 3
LEC 1: Operating systems
(handout)
Preparation:
Read
The Evolution of the Unix Time-Sharing System
Assignment:
Lab 1: C, Assembly, Tools, and Bootstrapping |
sep 4 |
sep 5 |
sep 8
LEC 2: PC hardware and x86 programming
Preparation:
Read
PC Assembly Language, except ch 5, 6, and 7.2;
do Homework 1
| sep 9 |
sep 10
LEC 3:
OS Organization
Preparation:
Read
Exokernel;
do Homework 2
Assignment:
Lab 2: Memory management |
sep 11
DUE: Lab 1 |
sep 12 |
sep 15
LEC 4:
Address spaces using segmentation
(handout)
Preparation:
Read bootasm.S, bootother.S, bootmain.c, main.c, and init.c of xv6;
do Homework 3
| sep 16 |
sep 17
LEC 5:
Address spaces using page tables
(handout)
Preparation:
Read 80386
chapters 5 and 6, and setupsegs in xv6;
do Homework 4
| sep 18 |
sep 19 |
sep 22 Student holiday |
sep 23 |
sep 24
LEC 6:
Interrupt and Exception Handling
Preparation: Read trapasm.S,
trap.c, syscall.c, and usys.S of xv6. You will need to consult
IA32 System
Programming Guide chapter 5 (skip 5.7, 5.8.2,
5.12.2, 5.14); do Homework
5
Assignment:
Lab 3: User-Level Environments |
sep 25 DUE: Lab 2 |
sep 26 |
sep 29
LEC 7:Multiprocessors and locking
Preparation:
Read spinlock.c and skim mp.c;
do Homework 6
| sep 30 |
oct 1
LEC 8:
Processes and Context Switching
Preparation:
Read proc.c, setjmp.S, and sys_fork (in sysproc.c);
do Homework 7 |
oct 2
DUE: Lab 3 (Part A) |
oct 3 ADD DATE |
oct 6
LEC 9:
Processes and coordination
Preparation:
Read remainder of proc.c and sys_wait,
sys_exit, sys_kill;
do Homework 8
Assignment:
Lab 4: Preemptive Multitasking |
oct 7 |
oct 8
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.
do Homework 9
|
oct 9
DUE: Lab 3 (Part B) |
oct 10 |
oct 13 Columbus Day Holiday |
oct 14 |
oct 15
QUIZ #1:
Mid-term quiz during lecture time
open book and notes
scope: Lectures 1-10, xv6, and labs
practice: previous years' quizzes.
| oct 16 DUE: Lab 4 (Part A) |
oct 17 |
oct 20
LEC 11: Naming
Preparation:
Read namei in fs.c (and remainder of fs.c), sysfile.c, file.c
do Homework 10
| oct 21 |
oct 22
LEC 12: File system performance and crash recovery
Preparation:
Read
Soft Updates;
do Homework
11
| oct 23 DUE: Lab 4 (part B) |
oct 24 |
oct 27
LEC 13: Performance and durability
Preparation:
Read Rethink the sync;
no homework
|
oct 28 |
oct 29
LEC 14:
Scheduling
Preparation:
Read
Eliminating Receive Livelock;
do Homework 15
Assignment:
Lab 5: File system and Spawn
| oct 30 DUE: Lab 4 (Part C) |
oct 31 |
nov 3
LEC 15:
Microkernels and
capabilities
Preparation:
Read KeyKOS,
Confused deputy;
do Homework 12
|
nov 4
|
nov 5
LEC 16:
Language/OS co-design
Preparation:
Read Singularity
and Language Support for Message-based Communication;
no homework
|
nov 6 DUE: Lab 5
Assignment:
Lab 6: Network Driver
|
nov 7
|
nov 10 Veteran's Day Holiday |
nov 11 Veteran's Day Holiday |
nov 12
LEC 17:
Distributed OS
Preparation:
Read Fault Tolerance under UNIX;
no homework
|
nov 13 |
nov 14
Assignment:
Lab 7: Final Project
|
nov 17
LEC 18:
Multi-processor coordination
Preparation:
Read Read-Copy Update;
no homework
| nov 18 |
nov 19
LEC 19:
Virtual Machines
Preparation:
Read Software vs Hardware Virtualization;
Homework: final project proposal
DROP DATE
| nov 20 DUE: Lab 6 |
nov 21 |
nov 24
LEC 20: OS Security
Preparation:
Read HiStar;
no homework
|
nov 25
|
nov 26
LEC 21: More HiStar
Skipped Mondriaan Memory Protection.
Preparation (unused):
Read Mondrix
|
nov 27 Thanksgiving |
nov 28 Thanksgiving |
dec 1
LEC 22: OS bugs
Preparation:
Read Bugs as a
deviant behavior;
do Homework 20 |
dec 2
|
dec 3
LEC 23: OS Bakeoff |
dec 4
|
dec 5 DUE: Lab 7 |
dec 8 no class |
dec 9 |
dec 10 no class |
dec 11 |
dec 12 |
dec 15 |
dec 16 |
dec 17 |
dec 18 |
dec 19
Final Exam
9:00am-12:00noon in duPont
|