Monday | Tuesday | Wednesday | Thursday | Friday |
---|---|---|---|---|
Jan 3 | Jan 4 Introduction, OS Abstractions (slides) PREP: Read The Evolution of the Unix Time-Sharing System, optionally read Multi-threading and Fork. SG: chapter 1, pipe man page, Interrupted Primitives OUT: Lab 1: Interprocess Communication | Jan 5 | Jan 6 Operating System Structure (slides) PREP: Read xv6 chapter 0. SG: chapter 2 | Jan 7 ..continued |
Jan 10 | Jan 11 System Calls and Threads (slides) PREP: do homework | Jan 12 | Jan 13 ..continued. OUT: Lab 2: Pintos Threads Assignment DUE: Lab 1 | Jan 14 Makar Sakranti |
Jan 17 | Jan 18 Scheduling Policies (slides) PREP: do homework | Jan 19 | Jan 20 x86 Processor Basics (slides, handout) PREP: Read xv6 chapter 1 and optionally IA-32 guide | Jan 21 ..continued |
Jan 24 | Jan 25 ..continued | Jan 26 | Jan 27 Processes and Memory Allocation (MMU, paging) PREP: Read xv6 chapter 2, Process Anatomy; do homework (l3-pointers.c) SG: 3.1-3.3 | Jan 28 ..continued |
Jan 31 | Feb 1 Modes, Stacks, and Traps (handout) PREP: Read xv6 chapter 3 | Feb 2 | Feb 3 ..continued | Feb 4 ..continued PREP: do homework |
Feb 7 | Feb 8 MINOR1 TESTS (exam, solutions) | Feb 9 | Feb 10 Context Switching PREP: Read xv6 chapter 5 through section "Code: Scheduling" with proc.c, setjmp.S, and sys_fork (in sysproc.c) SG: chapter 5 OUT: Lab 3: Pintos Userprog Assignment | Feb 11 ..continued DUE: Lab 2 |
Feb 14 | Feb 15 Address Translation (slides) PREP: Read 80386 chapter 3 SG: chapter 8 Return of Minor-1 scripts | Feb 16 | Feb 17 ..continued SG: chapter 9 | Feb 18 Multiprocessors and Locking PREP: Read xv6 chapter 4 with spinlock.c and skim mp.c; do homework Recursive vs. Non-Recursive Locks SG: 6.1-6.4 |
Feb 21 | Feb 22 ..continued | Feb 23 | Feb 24 ..continued | Feb 25 Process Coordination PREP: Read rest of xv6 chapter 5, Kaashoek's concurrency notes (internal link); read remainder of proc.c and sys_wait, sys_exit, sys_kill SG: chapters 6, 7 OUT: Lab 4: Pintos VM Assignment DUE: Lab 3 |
Feb 28 | Mar 1 Mid-sem break | Mar 2 | Mar 3 Mid-sem break | Mar 4 Mid-sem break |
Mar 7 | Mar 8 ..continued PREP: do homework | Mar 9 | Mar 10 NO LECTURE | Mar 11virtperf talk by Prof. Umesh Bellur (IITB) |
Mar 14 | Mar 15 Abstracting Synchronization | Mar 16 | Mar 17 Pintos VM Assignment | Mar 18 VM Swapping and Page Replacement (l10, l11). Advanced Reading: "CAR: CLOCK with Adaptive Replacement" (PDF, PDF of Presentation) SG: chapter 9 |
Mar 21 | Mar 22 Page Replacement, Thrashing (l12, l13) OUT: Lab 5: Pintos Filesys Assignment | Mar 23 | Mar 24 MINOR2 TESTS (Practice Questions) | Mar 25 MINOR2 TESTS |
Mar 28 DUE: Lab 4 | Mar 29 Files and Disk I/O PREP: 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. Commentary on these functions in xv6 chapter 6 and chapter 7 2009 Lecture Slides Posted: MINOR 2 UNIX File Permissions Sticky Bit SG: chapters 12, 13 | Mar 30 | Mar 31 File Naming (exercise) PREP: Read namei in fs.c (and remainder of fs.c), sysfile.c, file.c. Commentary on these functions in xv6 chapter 7 and chapter 8 SG: chapters 10, 11 | Apr 1 ..contd |
Apr 4 | Apr 5 File system performance and reliability PREP: Read Journaling the Linux ext2fs Filesystem | Apr 6 | Apr 7 Program Loading and Dynamic Linking PREP: Read xv6 chapter 9 | Apr 8 Performance and durability PREP: Read Rethink the sync; do homework |
Apr 11 | Apr 12 Ram Navmi | Apr 13 | Apr 14 Ambedkar Jayanti | Apr 15 Scheduling PREP: Read Eliminating Receive Livelock |
Apr 18 | Apr 19 Virtual Machines (slides) PREP: Read Software vs Hardware Virtualization (optional) | Apr 20 | Apr 21 ..contd. | Apr 22 Good Friday DUE: Lab 5 |
Apr 25 | Apr 26 Multi-processor coordination: lock free PREP: Read Read-Copy-Update | Apr 27 | Apr 28 ..contd. | Apr 29 Summary lecture |