하루에 한 문제

Process Scheduling Algorithm (선점) 본문

카테고리 없음

Process Scheduling Algorithm (선점)

dkwjdi 2021. 5. 18. 15:25

SRTF == SRT (Shrotest Remaining Time First)

  • SJF스케쥴링과 동일하지만 선점기법을 사용한다.

장점 

SJF보다 평균 대기시간이나 평균 반환시간에서 효율적이다.

대화영 운영체제에 유용하다.

 

단점

잦은 Context Switching으로 인해 오버헤드 증가

기아상태 발생

SJF와 마찬가지로 현실에서 사용하기 힘들다(CPU burst를 예측하기가 힘들다)

 

 

RR (Round Robin)

  • 들어오는 순서대로 같은 크기의 시간할당(Time Slice)를 하는 방법
  • 한 프로세스가 자신에게 할당된 Time Slice를 다 쓰게되면 다시 ready상태로 들어간다.

 

장점

모든 프로세스가 공정하게 시간을 할당받기에 기아상태가 발생하지 않는다.

 

단점

하드웨어 타이머가 필요하다 

시간 할당량이 너무 크면 FCFS와 같아진다.

시간 할당량이 너무 작으면 잦은 Context Switching이 발생해 오버헤드가 증가함

 

다단계 큐 스케줄링(MultiLevel Queue-MLQ)

  • 준비 상태 큐를 여러 종류별, 단계별로 분할해두고 자신만의 독자적인 스케쥴링 구현이 가능(프로세스는 현재 큐에서 다른큐로 이동 불가능하다)
  • 각 큐는 절대적인 우선순위를 가지며(아래 그림에서는 시스템프로세스 순위가 가장높음) 우선순위가 높은큐가 모두 비기 전까지는 낮은 우선순위큐에 있는 프로세스를 실행할 수 없다.

장점

응답이 빠르다

 

단점

여러 준비 큐와 스케쥴링 알고리즘 때문에 추가 오버헤드 발생

기아상태 발생

 

다단계 피드백 큐 스케쥴링(MultiLevel Feedback Queue, MLFQ)

  • 다단계 큐 스케줄링에서 계속해서 실행이 되지 않는 프로세스에 대해 다른 큐로 이동을 시켜주는 방식
  • 오래대기한 프로세스는 높은 우선순위를 가진 레벨의 큐로 이동한다.

장점

매우 유연하여 스케쥴러를 특정 시스템에 맞게 구현 가능하다.

자동으로 입출력중심, 프로세서 중심 프로세스를 구분한다.

적응성이 높아 프로세스의 사전정보 없이도 최소작업 우선 스케쥴링의 효과를 보여준다.

 

단점

설계와 구현이 매우 복잡

 

출처

https://firewall.tistory.com/33

https://www.crocus.co.kr/1375

https://mynote-study.tistory.com/19?category=793977

Comments