Computer Science

[운영체제] 교착상태 개념, 특징(상호배제, 점유하며 대기, 비선점, 순환 대기)

imsunbow 2024. 1. 15. 15:53

교착상태(deadlock)란 프로세스 집합에 있는 모든 프로세스가 한 자원을 점유하고, 같은 집합의 다른 프로세스가 점유한 자원의 획득을 기다리는 상태를 의미한다.

 

EX) DVD와 프린터에서

P1은 DVD를 점유, 프린터 요청/ P2는 프린터를 점유, DVD를 요청하는 경우 교착상태 발생

 

교착상태의 발생 필요조건은 4가지로 볼 수 있다. 이 4가지 조건이 '동시에' 성립할 때에 교착상태는 발생한다.

 

1) 상호배제 : 한 번에 한 프로세스만 사용할 수 있는 자원이 적어도 하나 존재

2) 점유하며 대기: 프로세스가 최소 하나의 자원을 점유한 상태에서 다른 프로세스가 점유한 자원을 대기

3) 순환대기 : {P0,P1,... PN)에서 각각 자기 앞 자원 대기중인 경우

4) 비선점: 자원이 강제로 방출될 수 없고, 자발적으로만 방출될 수 있다.

 

반응형