CSL373 : Operating Systems : Schedule

Sem II, 2010-11

Links to notes etc. on future days are tentative only. They are here only to give you an idea what the future will bring.
SG refers to the book by Silberschatz and Galvin
MondayTuesdayWednesdayThursdayFriday
Jan 3Jan 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 11
virtperf 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
Many course materials derived from 6.828 by Frans Kaashoek and others at MIT; some derived from Dawson Engler's cs140 course materials at Stanford