자격증/전자계산기조직응용기사

[전자계산기조직응용기사 실기] 필수! 교착상태(Deadlock)

FintechPark 2021. 3. 30. 18:00

 

착상태


 

[교착상태(Deadlock) 발생 조건]

 

데드락은 아래 네 가지 조건을 모두 동시에 충족할 때 발생한다. IT인들에게 데드락은 드립?의 요소로도 활용된다.

 

발생 조건 의미
상호배제
(Mutual exclusion)
여러 프로세스들이 필요로 하는 하나의 자원에 대해 동시 접근 불가
점유대기
(Hold and wait)
프로세스가 할당된 자원을 가진 상태에서 다른 프로세스가 사용하는 자원을 기다림
비선점
(No preemption)
프로세스가 어떤 자원의 사용을 끝낼 때까지 그 자원을 강제로 가져올수 없음
순환대기
(Circular wait)
각 프로세스는 순환적으로 다음 프로세스가 요구하는 자원을 가지고 있음

 


 

[교착상태(Deadlock) 해결 방법]

 

해결은 아래 네 가지 조건으로 가능하다.

 

해결 방법 의미
예방
(Prevention)
교착상태 발생 조건 중 하나만 해결하면 된다. 발생 조건을 예방하는 방법이다. (※ 상호배제의 예방, 점유대기의 예방, 비선점의 예방, 순환대기의 예방)
회피
(Avoidance)
교착상태의 발생 조건을 없애기보다는 발생하지 않도록 알고리즘을 적용하여 회피하는 방법으로, 은행원 알고리즘 등이 있다.
회복
(Recovery)
교착상태가 발생하는 것을 막지 않고, 교착상태 발생 이후에 문제를 해결하며 회복하는 방법이다.
무시
(Ignore)
교착상태를 해결할 때에도 문맥교환에 의한 오버헤드로 성능 저하가 생긴다. 교착상태에 의한 성능저하보다 오버헤드를 해결할 때의 성능저하가 큰 경우 그냥 무시한다.

 


 

전자계산기조직응용기사뿐만 아니라 모든 IT 시험에 자주 출제되는 개념이니 잘 이해하자!