Printing tip: to save trees, you can print several PDF slides to a page. Suppose the slides you download are l01.pdf. You can run the the following command on Unix to generate a new PDF file l01x4.pdf with 4 slides in one page.
pdftops l01.pdf - | psnup -pletter -l -4 | ps2pdf - > l01x4.pdf
We put a tentative syllabus here to give you an idea what future may bring. This syllabus is subject to change as the course progresses.
# | Day | Date | Topic | Assignment |
---|---|---|---|---|
1 | Wed | 1/19 | Introduction and Logistics | Homework 1 out |
2 | Mon | 1/24 | OS Overview and History | Read MOS Ch 1, xv6 unix.pdf |
3 | Wed | 1/26 | PC Hardware and x86 Programming | Read MOS Ch 1.3, xv6 boot.pdf and related source files |
4 | Mon | 1/31 | Processes and Address Spaces | Read MOS Ch 2.1, 3.1, 3.2 xv6 proc.c, and swtch.S |
5 | Wed | 2/2 | Segmentation and Paging | Read MOS Ch 3.3, 3.5, 3.7, xv6 mem.pdf, proc.c, and vm.c, Homework 1 due, Homework 2 out |
6 | Mon | 2/7 | Interrupts and System Calls | Read MOS Ch 1.6, Ch 5.1.5, xv6 trap.pdf and related source files |
7 | Wed | 2/9 | xv6 process operations | xv6 exec.pdf |
8 | Mon | 2/14 | Threads and Synchronization | Read MOS Ch 2.2, xv6 lock.pdf with spinlock.c, and skim mp.c |
9 | Wed | 2/16 | Locks | Read MOS Ch 2.3, xv6 sched.pdf "Sleep and wakeup," Homework 2 due, Homework 3 out |
10 | Mon | 2/21 | Semaphores and Monitors | Read MOS Ch 2.3, Ch 2.5 |
11 | Wed | 2/23 | Concurrency Errors | Read Eraser |
12 | Mon | 2/28 | Scheduling | Read MOS Ch 2.4 |
13 | Wed | 3/2 | Advanced Scheduling | Read xv6 sched.pdf with proc.c, and sysproc.c |
14 | Mon | 3/7 | Midterm review | Homework 3 due, Homework 4 out |
15 | Wed | 3/9 | Midterm exam | |
16 | Mon | 3/14 | No class, spring break | |
17 | Wed | 3/16 | No class, spring break | |
18 | Mon | 3/21 | Dynamic Memory Allocation | Read MOS Ch 3.1-3.3, 3.5-3.7, xv6 vm.c |
19 | Wed | 3/23 | Virtual Memory | Read MOS Ch 3.3, Ch 3.4 |
20 | Mon | 3/28 | Disks | Read MOS Ch 5.4, xv6 disk.pdf with fs.c, bio.c, and ide.c, Homework 4 due, Homework 5 out |
21 | Wed | 3/30 | RAID | Read RAID |
22 | Mon | 4/4 | File Systems | Read MOS Ch 4, xv6 fsdata.pdf, fscall.pdf with fs.c, sysfile.c, and file.c |
23 | Wed | 4/6 | xv6 File and Disk Systems | Read xv6 fsdata.pdf, fscall.pdf with fs.c, sysfile.c, and file.c |
24 | Mon | 4/11 | File System Examples | Read FFS and LFS |
25 | Wed | 4/13 | Linux File Systems and Journaling | Read ext3 journaling, Homework 5 due, Homework 6 out |
26 | Mon | 4/18 | Storage System Errors | Read FiSC and eXplode |
27 | Wed | 4/20 | Virtual Machines | Read software vs hardware virtualization |
28 | Mon | 4/25 | AMD slides, Kernels for Multicore | Read multikernel |
29 | Wed | 4/27 | Stable Deterministic Multithreading | Read Tern |
30 | Mon | 5/2 | Final review | Homework 6 due |
Final exam: 4:10-7:00pm, Monday, 5/9