교착 상태(Deadlock)
무한 대기 상태로, 두 개 이상의 작업이 서로 상대방의 작업이 끝나기만을 기다리고 있어서 다음 단계로 진행하는 못하는 상태를 말합니다.
<조건>
1. 상호배제
2. 점유대기
3. 비선점
4. 순환대기
위 4가지 조건이 성립될 때 Deadlock이 발생합니다.
조건 중에 일부를 성립이 안되도록 하면 해결할 수 있습니다.
기아 상태(Starvation)
특정 프로세스의 우선순위가 낮아서 원하는 자원을 계속 할당 받지 못하는 상태를 말합니다.
교착 상태는 여러 프로세스가 동일 자원 점유를 요청할 때 발생하고, 기아 상태는 여러 프로세스가 부족한 자원을 점유하기 위해 경쟁할 때, 특정 프로세스는 영원히 자원 할당이 안되는 경우에 주로 발생합니다.
기아 상태를 해결하기 위해서는 우선순위를 변경해주면서 해결할 수 있습니다.
'운영체제 (OS)' 카테고리의 다른 글
가상 메모리 - 페이징 시스템 (0) | 2021.04.22 |
---|---|
가상 메모리 (0) | 2021.04.22 |
스레드 동기화 문제 (0) | 2021.04.22 |
스레드 (0) | 2021.04.21 |
프로세스 총 정리 및 성능 개선 방법 (0) | 2021.04.21 |