CS/운영체제
기아상태(Starvation)
gy2710
2022. 7. 27. 01:35
Starvation
특정 프로세스의 우선 순위가 낮아서 원하는 자원을 계속 할당 받지 못하는 상태
Deadlock은 여러 프로세스가 동일 자원에 대한 점유를 요청할 때 발생하고,
Starvation은 여러 프로세스가 부족한 자원을 점유하기 위해 경쟁할 때 발생한다.
해결방법
- 프로세스의 우선 순위를 수시로 변경하여 각 프로세스마다 높은 우선 순위를 가질 수 있는 기회를 준다.
- 오래 대기한 프로세스의 우선 순위를 높인다.
- 우선 순위가 아닌 요청한 순서대로 처리하는 Queue를 사용한다.