스케줄링 알고리즘

3강. 스케줄링 알고리즘

스케줄링 알고리즘에 대해 알아보자.

주요 용어

  • 평균 대기시간: 각 프로세스가 수행이 완료될 때까지 준비 큐에서 기다리는 시간의 합의 평균값
  • 평균 반환시간: 각 프로세스가 생성된 시점부터 수행이 완료된 시점까지의 소요시간의 평균값
  • FCFS: First-Come First-Served. 먼저 도착한 것을 먼저 처리
  • SJF: Shortest Job First. 수행 시간이 가장 짧은 것을 먼저 처리
  • SRT: Shortest Remaining Time. 남은 수행 시간이 가장 짧은 것을 먼저 처리
  • RR: Round Robin. 정해진 시간 간격만큼씩 순서대로 돌려 가며 처리
  • HRN: Highest Response Ratio Next. 응답비율이 가장 큰 것을 먼저 처리

정리하기

  • FCFS 스케줄링준비 큐에 도착한 순서에 따라 디스패치하는
    비선점 방식의 스케줄링 알고리즘

  • SJF 스케줄링준비 큐에서 기다리는 프로세스 중
    수행 시간이 가장 짧다고 예상되는 것을 먼저 디스패치
    하는 비선점 알고리즘

  • SRT 스케줄링실행이 끝날 때까지
    남은 시간 추정치가 가장 짧은 프로세스를 먼저 디스패치
    하는 선점 방식의 알고리즘

  • RR 스케줄링정해진 시간 간격만큼씩 순서대로 돌려 가며
    디스패치
    하는 선점 방식의 알고리즘

  • HRN 스케줄링대기시간과 서비스 받을 시간을 함께 고려한
    우선순위에 따라 스케줄링하는
    비선점 방식의 알고리즘

  • 다단계 피드백 큐 스케줄링입출력 위주의 프로세스(대화식 작업)가
    CPU 스케줄링에 우선권을 갖도록
    하는 선점 방식의 알고리즘

  • 다단계 피드백 큐 스케줄링은 각 단계의 큐마다 주어진 시간 할당량을 모두 소비하고,
    선점된 프로세스는 큰 단계 큐로 가고, 그렇지 않은 프로세스는 점차 작은 단계로 갈 수 있게 하는 적응적 방식의 변형도 있다.