두근두근이야기

[임베디드기사]교착상태 본문

IT/IT ::임베디드기사

[임베디드기사]교착상태

골든 2013. 9. 26. 03:21

상호배제
상호배제는 병행성을 보장하기 위한 것으로 어떤 특정한 시점에 하나의 자원에는 하나의 프로세스만 접근할 수 있게 나머지의 접근을 배제시키는 것을 뜻한다.

상호배제를 보장하기 위해서는 다음과 같은 조건들이 만족해야한다.

1. 임계영역에서 수행하는 프로세스가 없을 경우 진입을 요구한 프로세스는 즉시 허가해 주어야 한다.

2. 두 개의 프로세스가 임계영역으로 진입하려고 경쟁할 때 선택을 무기한 방치해서는 안된다.

3. 어떠한 프로세스도 임계영역으로 진입하려는 프로세스를 방해해서는 안된다.


점유와대기

적어도 하나의 자원을 보유하고 다른 프로세스에 할당된 자원을 얻기 위해 기다리는 프로세스가 있어야 한다.


환형대기

프로세서들이 자원을 요구하고 할당받는 과정에서 서로 다른 프로세스가 원하는 자원들을 가지며 또한 다른 프로세스가 가지고 있는 자원을 요구하는 행태의 맞물림으로 인해 발생한다.


비선점

자원은 선점될 수 없다. 즉 자원을 강제로 빼앗을 수 없고 그 자원을 점유하고 있느느 프로세스가 끝나야 그 자원이 해제될 수 있다.