IT 시사 및 CS 지식/IT 시사 및 CS 지식

[CS스터디]220726 운영체제 - 4

GAEBAL 2022. 7. 31. 13:55
728x90

교착 상태가 무엇인지 설명해주세요.

다중 프로그래밍 환경에서 여러 프로세스가 제한된 resource 를 두고 경쟁하는 경우 발생하고 프로세스가 결코 일어날 수 없는 특정 이벤트를 무한정으로 기다리는 상태

 

 

 

교착 상태에서 기아 상태의 해결 방법에 대해 설명해보세요.

교착 상태

교착 상태는 여러 프로세스가 동일 자원 점유를 요청할 때 발생

 

기아 상태

기아 상태는 여러 프로세스가 부족한 자원을 점유하기 위해 경쟁할 때, 특정 프로세스는 영원히 자원 할당이 안되는 경우를  주로 의미함

 

프로세스가 작업을 수행하지 못하고 무한히 기다리는 상태

현실적으로 수행할 수 있는 작업이지만, 무기한 연기로 인해 수행할 수 없는 상태에 빠지는 것.

프로세스의 우선순위에 따라 자원을 할당할 경우, 우선순위가 낮은 프로세스들은 기아 상태에 빠질 수 있다.

 

해결 방법

이때 우선순위의 변화를 주는 aging 기법을 사용하여 기아 상태를 해결할 수 있다.

  • 우선순위 변경
    • 프로세스 우선순위를 수시로 변경해서, 각 프로세스가 높은 우선순위를 가질 기회주기
    • 오래 기다린 프로세스의 우선순위를 높여주기
    • 우선순위가 아닌, 요청 순서대로 처리하는 FIFO 기반 요청큐 사용
728x90