교착상태(데드락)
- 데드락은 두 개 이상의 프로세스나 쓰레드가 서로 자원을 기다리면서 무한히 기다리게 되는 상태를 말합니다.
* 데드락을 피하는 방법
- 상호배제 : 하나의 자원을 특정 시기에 하나의 프로세스/쓰레드만 소유할 수 있는 형태
- 자원점유 : 하나의 자원을 소유하고 다른 프로세스 혹은 쓰레드의 자원을 요청하는 상태
- 선취 불가능 : 하나의 프로세스/쓰레드에게 주어진 자원은 해당 프로세스/쓰레드가 스스로 놓기 전에는 놓게 만들 수 없는 상태
- 순환대기 : 두 개의 프로세스/쓰레드의 경우, A->B, B->C, C->A에게 서로 자원을 요청하고 기다리는 상황으로 서로 꼬리를 물고 기다리는 상황
4가지 중 하나라도 불충족하면 데드락이 발생하지 않음.
'STUDY > OS' 카테고리의 다른 글
[OS]멀티 프로세싱과 멀티 프로그래밍 (0) | 2018.09.01 |
---|---|
[OS]프로세서 스케줄링의 종류 (0) | 2018.08.26 |
[OS]컴파일러 & 인터프리터 (0) | 2018.08.25 |
[OS]링커 & 로더 (0) | 2018.08.25 |