| CS341 | OPERATING SYSTEMS | July 2014 -Nov 2014 | Instructor: Dr. A. Sahu (email:asahu) |

TAs: [M Tech II: Akash Bharti, Pranjal Borah]

Course Structure:
Lectures (Thanks to (a) Galvin, author of OS Book, (b) Herlihy author of Art of multiprocessor programming, and (c) Brucker, author of Scheduling Algorithms book for providing PPT Slides)
  1. 30th July 2014: Introduction to CS341 PDF Slides
  2. 31th July 2014: Introduction to OS PDF Slides
  3. 05th Aug 2014: Review of Comp Arch From OS Prospects PDF Slides

  4. 07th Aug 2014: Multicore/thread, Multi-programming, multi tasking, user/kernel mode in OS PDF Slides
  5. 12th Aug 2014: OS Services and Structure PDF Slides
  6. 13th Aug 2014: System Call and System Program PDF Slides
  7. 14th Aug 2014: System Call and System Program, Static/Dynamic Linking/Loading Example Cntd.. PDF Slides
  8. 19th Aug 2014: OS Types, Envt, Design Approach PDF Slides

  9. 20th Aug 2014: Process State, PCB, JOB Queue, Context Switch, Scheduler PDF Slides
  10. 21st Aug 2014: Process Creation, Termination, I/O, Scheduling Criteria PDF Slides
  11. 26th Aug 2014: Process Scheduling Flow Time,Waiting Time, 2 CPUs, FCFS, SJF, SJF-I,Burst PredictionPDF Slides
  12. 27th Aug 2014: Process Scheduling: Priority, RR, Multilevel Queue, α|β|γ Notation PDF Slides.

  13. 28th Aug 2014: Scheduling Algorithm α|β|γ, 1|∑wjCj, P/Q|ptmn|Cmax, P|Cmax [Sec 5.1, Brucker EBook] PDF Slides
  14. 02nd Sep 2014: Scheduling Algorithm: Approx for P||Cmax (Algorithm EvaTardos-Page 600)PDF Slides
  15. 03rd Sep 2014: Scheduling Algorithm: Approx for P|prec,pj=1|Cmax (Algorithm:CLR Book page 779) and Distributed Scheduling (Load Balancing Vs Load Sharing) PDF Slides
  16. 04th Sep 2014: Cilk and Work Stealing, Real Time Scheduling (Chapter 4, Buttazzo Book and Chap 27, CLR BookCilkProject@MIT) PDF Slides
  17. 09th Sep 2014: Quiz/Take home on Power Aware (/Cloud) Scheduling PDF Slides

  18. 10th Sep 2014: Threading(Uthread, Kthread, Hthread), Uthread Vs KThread, Mapping UT to HT by Bypassing OS, Thread API, Mutex/Lock PDF Slides
  19. 11th Sep 2014: Pthread APIs: mutex, condition, barrier, TLS, Thread Safe DSPDF Slides.
  20. 16th Sep 2014: Lock/Unlock: Algorithms, Event, Time, Poset/Toset, Mutex+Deadlock Free+Starvation Free (Chap 2, Book: Art of Multiprocessor Programming, and Galvin Book) PDF Slides
  21. 17th Sep 2014:Two thread Sync+Proof, N thread Filter and Lamport Bakery Sync Algorithm, Lock with TAS/CAS PDF Slides
  22. 18th Sep 2014:LL/SC==> TAS/CAS/XCGH/FAI ==> Lock/Unlock ==> Mutex ==> Semaphore ==> Monitor; TAS/TTAS, Semaphore PDF Slides

  23. Mid Semester Examination 22nd Sept 2014:2PM-4PM, L1/L2/L3/L4[[Question]][[ModelSolution]]
  24. 30th Sep 2014:Classical Problem of Mutex and Monitor PDF Slides
  25. 01st Oct 2014:Monitor, Deadlock (Conditions for deadlock, Prevention and Avoidance) PDF Slides
  26. 07th Oct 2014:Deadlock: Avoidance (Banker Algorithm), Detection (WFG) with Removal PDF Slides
  27. 08th Oct 2014:Wrapping up Deadlock part, Main Memory PDF Slides

  28. 09th Oct 2014:Logical and Physical Address, MMU, Relocatable Address, Dynamic/Static linking, Dynamic/Static loading, Swap In/Swap out in PC (> 4GB, mostly un-utilized RAM) and Mobile (SSD: read/write asymmtry and bound on num write)?PDF Slides
  29. 14th Oct 2014:Memory Allocation: Fixed, Variable (first fit, best fit, worst fit) and Buddy PDF Slides
  30. 15th Oct 2014:Segmentation, Paging, Segmentation with Paging PDF Slides
  31. 16th Oct 2014:Paging and Virtual Memory PDF Slides
  32. 21st Oct 2014:Virtual Memory PDF Slides
  33. 22nd Oct 2014:VM PDF Slides
  34. 29th Oct 2014:VM : Page Replacement (FIFO, Optimal, LRU, LRU Implementation (Stack, Counter, Shift Reg+Comparator, Ref Bit and Second Chance, and Ref Bit+Modified Bit), Buffer frames/Victim Frame, Double Buffering) PDF Slides
  35. 30th Oct 2014: Frame Allocation, Thrashing, Working Set, Dynamic Utility Based Frame Allocation (LB, UB) PDF Slides

  36. 31st Oct 2014: HDD and (Quiz 2) PDF Slides, Question and Solution for Quiz 2 CS341-Quiz2.pdf
  37. 01st Nov 2014: FS and LDD:I/Os, Mass Storage, HDD Basic, Disk Arm Scheduling PDF Slides
  38. 05th Nov 2014:FS : RAID (Performance, Reliability, Availability, Capacity :PRAC) PDF Slides
  39. 11th Nov 2014:FS : File System Basic and Interface, I-node, Header PDF Slides

  40. 12th Nov 2014:FS : I-node and Disk AllocationPDF Slides
  41. 13th Nov 2014:LDD: Device Driver and Conclusion PDF Slides

  42. End Semester Examination 21st Nov 2014:1PM-4PM, L1/L2/L3/L4 [[Question]], [[ModelSol]]

Text Book
  1. Silberschatz, A. and Galvin, P. B Operating System Concepts, 8/e. Wiley, 2008
Reference Books
  1. Maurice Herlihy, Nir Shavit, Art of Multiprocessor Programming, Elsevier 2009
  2. Buttazzo Giorgio C. Hard Real-Time Computing Systems: Predictable Scheduling Algorithms and Applications , Springer Verlag, 2011
  3. Peter Brucker Scheduling Algorithms , Springer-verlag, 2007 EBook PDF
  4. M Pinedo Scheduling: Theory, Algorithms, and Systems , Springer-verlag, 2008
  5. Jonathan Corbet, Alessandro Rubini Linux Device Drivers, 3rd Edition Paperback – February 14, 2005 ,3rd Edition O'Reilly Media, 2005 EBooks Link

Class timing, Venue and Rules