Skip to content

Latest commit

 

History

History
50 lines (42 loc) · 1.62 KB

wisc-cs-537-2018-spring.md

File metadata and controls

50 lines (42 loc) · 1.62 KB

Introduction to Operating Systems (Spring 2018)

Course info

Outline

  1. Introduction
  2. Scheduling
  3. Memory management
  4. Paging: TLBs - Smaller
  5. Beyond physical
  6. Threads - Locks
    • Data race
    • Mutual exclusion
    • Spinlock
    • Atomic instruction
    • Add locks to a list or hash table
  7. Locks, CVs
    • Ticket locks
    • yield()
    • park()/unpark()
    • condition variables
    • fork/join problem
    • Producer/consumer problem
  8. Semaphores
    • Producer/consumer problem (cont.)
    • Semaphores
  9. Deadlock
    • Concurrency bugs
    • Atomicity violation
    • Ordering violation
    • Preventing deadlock
    • Avoiding deadlock
    • Detecting deadlock
    • Recovering deadlock
  10. I/O and disks
  11. RAID and file systems
  12. File system implementation and FFS
  13. Journaling
  14. LFS and SSD

Lecture 8: Remembering producer/consumer (Part 1). Ending producer/consumer, intro to semaphores (Part 2). Notes.Handouts: Semaphores. Video: Part 1 Part 2 Part 3 (Discussion)

Lecture 9: Bugs and deadlock (Part 1). Review (Part 2). Notes. Part 1 Part 2