개 이상의 프로세스가 각각의 공유 자원을 사용하고 있으면서 다른 자원을 요구하여 무한정 대기하는 상태를 교착상태라 하는데 이는 4가지 반드시 필요한 조건이 있다. 다음의 정리 내용을 확인하자.

교착상태가 일어나기 위한 네 가지 조건(하나라도 만족하지 않으면 일어나지 않음)

상호배제(Mutual Exclusion)

▪공유 자원을 하나의 프로세스만 공유해야 한다.

점유와 대기(Hold and Wait)

▪최소한 하나의 자원을 점유하고 있고, 다른 프로세스가 점유한 자원을 이용하기 위해 대기하는 프로세스가 있어야 한다.

비선점(Non-Preemption)

▪다른 프로세스에 할당된 자원을 강제로 중지할 수 없어야 한다.

환형대기(Circular Wait)

▪공유 자원과 공유 자원을 사용하려는 프로세스가 원형으로 구성되어 자신에게 할당된 자원을 점유하면서 인접한 양쪽 프로세스의 자원을 요구해야 한다.


'NativeCode > api' 카테고리의 다른 글

Sendarp 사용법  (0) 2010.03.19
Event  (0) 2010.03.19
Synchronization Function  (0) 2010.03.19
Win Version & Macro  (0) 2010.03.18
사용법  (0) 2010.03.18

+ Recent posts