우선순위(Priority) 스케줄링 알고리즘

sz L·2023년 9월 13일
0

OS

목록 보기
2/5

※ 스케줄링 알고리즘을 평가하기 위해서 고려해야 할 특성

  1. 프로세서 사용률
  2. 처리율
  3. 반환시간
  4. 대기시간
  5. 반응시간

우선순위 스케줄링(Priority Scheduling)


우선순위 스케줄링은 위 그림과 같이 준비 큐에 프로세스가 도착하면, 도착한 프로세스의 우선순위와 현재 실행중인 프로세스의 우선순위를 비교하여 우선순위가 가장 높은 프로세스에 프로세서를 할당하는 방식이다

우선순위가 동일한 프로세스가 준비 큐로 들어오면 FIFO의 순서로 스케줄링을 하게 된다.

우선순위 결정법

  • 내부적 우선순위 결정
    제한시간, 기억장소 요청량, 사용 파일 수, 평균 프로세서 버스트에 대한 평균 입출력 버스트의 비율

  • 외부적 우선순위 결정
    프로세스의 중요성, 사용료를 많이 낸 사용자, 작업을 지원하는 부서, 정책적 요인

장점

각 프로세스의 상대적 중요성을 정확히 정의할 수 있다.

다양한 반응으로 실시간 시스템에 사용 가능하다

단점

높은 우선순위 프로세스가 프로세서를 많이 사용하면 우선순위가 낮은 프로세스는 무한정 연기되는 기아가 발생한다.

에이징
매 분마다 대기 중인 프로세스의 우선순위를 1씩 증가시키는 방법.
무한 정지와 기아상태를 해결하기 위해 고착된 방법

선점 우선순위 vs 비선점 우선순위


위 표를 각각 간트차트를 그려보면

선점 우선순위

반환시간

비선점 우선순위

반환시간

profile
가랑비는 맞는다 하지만 폭풍은 내 것이야

0개의 댓글