교착상태라고도 하며 두 개 이상의 프로세스나 쓰레드가 서로 자원을 얻지 못해서 처리를 못하여 결과적으로 아무 일도 처리를 못하는 상태를 말한다.
상호 배제
자원에는 한 번에 한 프로세스만 사용할 수 있다.
점유 대기
자원을 최소한 하나를 보유하고, 다른 프로세스에 할당된 자원을 점유하기 위해 대기하는 프로세스가 존재한다.
비선점
이미 할당된 자원을 강제로 뺏을 수 없다.
순환 대기
각 프로세스는 순환적으로 다음 프로세스가 요구하는 자원을 가지고 있다.
상호 배제 조건 제거
여러 프로세스가 자원을 사용할 수 있도록 한다.
점유와 대기의 조건 제거
한 프로세스에 수행되기 전에 모든 자원을 할당시키고 나서 점유하지 않을 때에는 다른 프로세스가 자원을 요구하도록 하는 방법.
비선점 조건 제거
비선점 프로세스에 대해 선점 가능한 프로토콜을 만들어준다.
순환 대기 조건 제거
자원 유형에 따라 순서를 메긴다.