티스토리 뷰

운영체제/이론

(38) Deadlock이 발생할 수 있는 Condition

geonwoopaeng@gmail.com 2020. 9. 25. 16:44

### Deadlock이 발생할 수 있는 Condition ###

: 4가지 조건 만족 할때 Deadlock이 된다.

1. < Mutual exclusion (상호 배제) >

: 하나 이상의 리소스를 공유 할 수 없는 모드로 유지해야 한다

(동시에 접근 할 수 없는 상태)

2. < Hold and wait (보류 및 대기) >

: thread는 하나 이상의 리소스를 보유하고 다른 thread가 보유한 추가 리소스를 얻기 위해 대기한다.

=> 최소 2개 리소스를 요구하는 thread가 하나는 가지고 있고 다른 리소스를 기다리고 있는 것

3. < No preemption (선점권 없음) >

: 자기 의지와 상관 없이 thread가 리소스를 빼앗기면 안된다는 것

(자원을 선점 할 수 없다)

4. < Circular wait (순환 대기) >

: thread 리소스에 대해 대기 할 때 순환의 구조로 있어야 한다.

반응형
공지사항
최근에 올라온 글