Week 7

Chapters (Modern Operating Systems):

  • 6 DEADLOCIS
    • 6.1 RESOURCES
      • 6.1.1 Preemptable and Nonpreemptable Resources
      • 6.1.2 Resource Acquisition
      • 6.2 INTRODUCTION TO DEADLOCKS
      • 6.2.1 Conditions for Resource Deadlocks
      • 6.2.2 Deadlock Modeling
    • 6.3 THE OSTRICH ALGORITHM
      • 6.4 DEADLOCK DETECTION AND RECOVERY
      • 6.4.1 Deadlock Detection with One Resource of Each Type
      • 6.4.2 Deadlock Detection with Multiple Resources of Each Type
      • 6.4.3 Recovery from Deadlock
    • 6.5 DEADLOCK AVOIDANCE
      • 6.5.1 Resource Trajectories
      • 6.5.2 Safe and Unsafe States
      • 6.5.3 The Banker's Algorithm for a Single Resource
      • 6.5.4 The Banker's Algorithm for Multiple Resources
    • 6.6 DEADLOCK PREVENTION
      • 6.6.1 Attacking the Mutual Exclusion Condition
      • 6.6.2 Attacking the Hold and Wait Condition
      • 6.6.3 Attacking the No Preemption Condition
      • 6.6.4 Attacking the Circular Wait Condition
    • 6.7 OTHER ISSUES
      • 6.7.1 Two-Phase Locking
      • 6.7.2 Communication Deadlocks
      • 6.7.3 Livelock
      • 6.7.4 Starvation