CS 스터디/운영체제

[스케쥴링] 3. 비선점 스케쥴링

doobi 2023. 7. 29. 01:32

1. FCFS(First Come First Serve = FIFO)

  • FCFS는 준비상태 큐에 도착한 순서에 따라 차례로 CPU를 할당하는 기법
  • 가장 간단한 알고리즘

2. SJF (Shortest Job First) 스케쥴링

  • SJF는 준비상태 큐에서 기다리고 있는 프로세스들 중에서 실행시간이 가장 짧은 프로세스에게 먼저 CPU를 할당하는 기법
  • 가장 적은 평균 대기 시간을 제공하는 최적 알고리즘이다. 

3. HRN (Highest Response-ratio Next)

  • 대기시간과 서비스(실행) 시간을 이용하는 기법이다.
  • 실행시간이 긴 프로세스에게 불리한 SJF 기법을 보완하기 위한 것이다. 
  • 우선순위를 계산하여 그 숫자가 높은 것을 우선으로 실행
    • 우선순위 계산식 = (대기시간 + 서비스 시간) / 서비스 시간

4. 기한부(Deadline) 스케쥴링

:작업을 명시된 시간이나 기한 내에 완료하도록 계획