Deadlock
Deadlock(교착상태)이란 프로세스들이 서로가 가진 자원을 기다리며 Block된 상태를 말한다. 예를 들어 프로세스 A, B, C가 있고 자원1 1, 2, 3이 있을 때, 각각의 프로세스는 작업을 수행하기 위하여 지정된 2개의 자원이 필요하다고 가정하자. 이러한 조건속에서 A가 1을 가지고 있는 상태에서 2를 요청(Request)하고, B는 2를 가지고 있는 상태에서 3을 요청하고, C는 3을 가지고 있는 상태에서 1을 요청한다면 프로세스는 서로의 자원을 기다리며 멈추게 된다. Deadlock 상태에 빠지면 어떤 프로세스가 먼저 희생(또는 종료)하지 않는 이상 끝나지 않는다. ...