Programing

Deadlock

BUST 2018. 12. 21. 10:38

Deadlock

  • 교착상태
  • 두 개 이상의 작업이 서로 상대방의 작업이 끝나기 만을 기다리고 있기 때문에 결과적으로 아무것도 완료되지 못하는 상태를 가리킨다.

조건

  • 상호배제(Mutual exclusion) 
    • 프로세스들이 필요로 하는 자원에 대해 배타적인 통제권을 요구한다.
  • 점유대기(Hold and wait) 
    • 프로세스가 할당된 자원을 가진 상태에서 다른 자원을 기다린다.
  • 비선점(No preemption) 
    • 프로세스가 어떤 자원의 사용을 끝낼 때까지 그 자원을 뺏을 수 없다.
  • 순환대기(Circular wait) 
    • 각 프로세스는 순환적으로 다음 프로세스가 요구하는 자원을 가지고 있다.