CS330: Operating Systems
Lecture Schedule


Lecture weeks Lecture Content Slides Reading Additional material and HW
29/07 - 03/08 Course logistics, Introduction, Process    1   2   3   OSTEP Ch2, Ch4 HW: List down the OSes you use on a day-to-day basis
05/08 - 10/08 System call, Process API, Files   1   2   code-examples   OSTEP Ch4, Ch5, Ch39 Linux man pages   inline-asm-tutorial  
12/08 - 17/08 File API, Pipes, Shell features   1   code-examples   OSTEP Ch39 Linux man pages   MAN pages for pipe, read, write, dup, dup2, open, close, fstat
19/08 - 24/08 Virtual memory, Address space   1   2   code-examples   OSTEP Ch13,Ch14   Man Pages (brk, mmap, mprotect) homework  
26/08 - 31/08 Resource Multiplexing, Priv. Architecture   1   2   OSTEP Ch6   Intel Software Developer's Manual 3A (Ch 6)
02/09 - 07/09 OS mode execution, Scheduling   1   2   OSTEP Ch6,Ch7   Intel Software Developer's Manual 3A (Ch 5, Ch7)
09/09 - 14/09 Scheduling Policy   1   OSTEP Ch7,Ch8   OSTEP Ch9
16/09 - 21/09 *** Midsem ***   *-*-*-*-*-*-*-*-*   *** Midsem ***   *-*-*-*-*-*-*-*-*  
23/09 - 28/09 Midsem discussion, Address Translation   1   2   OSTEP Ch15,Ch16  
30/09 - 04/10 Paging, Multi-level paging    1   2   OSTEP Ch16,Ch18,Ch19   Intel Software Developer's Manual 3A (Ch 3, Ch4)
07/10 - 12/10 *** Midsem Break ***   *-*-*-*-*-*-*-*-*   *** Midsem Break ***   *-*-*-*-*-*-*-*-*  
14/09 - 19/10 TLB, Page Fault and Swapping    1   2   OSTEP Ch16,Ch18,Ch19,Ch20,Ch21   Homework:   S2 #12, #13, #15
21/10 - 26/10 Threads, Concurrency   1   2   3   code-examples   OSTEP Ch26, Ch27, Ch28   Man pages: clone, pthread_create, pthread_join
28/10 - 02/11 Locks   1   OSTEP Ch28  Homework: Exercises mentioned in the slides
04/11 - 09/11 Semaphores, Concurrency Bugs   1   2   OSTEP Ch28, Ch31, Ch32  Homework: Exercises mentioned in the slides
11/11 - 14/11 Filesystem: Caching and Consistency   1   2   OSTEP Ch 40, Ch41, Ch42   Homework: Analyze consistency issues when creating a file