
[운영체제] DeadLock과 DeadLock 예방법
DeadLock이란? DeadLock이란 두 개 이상의 프로세스들이 서로의 자원을 요구하며 Block 상태로 무한정 대기하는 것을 말한다. 이러한 현상은 서로가 서로에게 있는 자원을 원하지만 자원이 Release 되지 않았기 때문에 발생한다. 그림을 보면 DeadLock 발생하는 상황은 각 프로세스가 자원을 가지고 있지만, 상대 프로세스에게 있는 자원을 기다리며 일어난다. 데드락에 걸릴 수 있는 자원의 종류로는 두 가지가 있다. Reusable Resources(재사용 가능한 자원) release된 이후에 사용가능하다. 오직 하나의 프로세스에 의해서만 사용된다. 각 프로세스가 하나의 리소스를 가지고 있고, 그와 동시에 다른 리소스를 요청할 때 데드락이 발생한다. Consumable Resources 한 ..