교착상태

    데드락(Deadlock)에 대하여

    1. 개요 데드락은 교착상태라는 뜻으로, 둘 이상의 프로세스가 다른 프로세스가 점유하고 있는 자원을 사용하기 위해 서로 대기하면서 빠지는 무한 대기 상태를 말한다. 2. 발생 조건 아래 4가지 조건을 모두 만족해야 데드락이 발생한다. 1) 상호 배제 서로의 경쟁자를 없앤다는 뜻으로, 자원을 점유하는 프로세스는 한 번에 하나만 존재해야 한다. 즉, 둘 이상의 프로세스가 하나의 자원을 동시에 점유할 수 없어야 한다. 사용 중인 자원을 다른 프로세스가 사용하려면 자원이 해제될 때 까지 기다려야 한다. 2) 점유 대기 하나 이상의 자원을 점유하고, 다른 프로세스가 사용 중인 자원을 점유하기 위해 대기하고 있는 프로세스가 존재해야 한다. 3) 비선점 자원을 선점할 수 없어야 한다. 즉, 다른 프로세스에게 할당된 ..