[OS] 스케줄링

나장승현
|2023. 12. 18. 15:52

스케줄링(Scheduling)

  • 시스템의 부하 상태를 막으면서 CPU처리량 최대화를 위해서 수행
  • 고수준 스케줄링 : 한번에 수행할 양을 조절
  • 저수준 스케줄링 : job에 따라 수행할 순서 등을 미세하게 조절
  • 선점형(Preemptive) 방식, 비선점형(Non-Preemptive) 방식

방식

  • FCFS(First Come First Served) : 준비 큐에 도착한 프로세스 순서대로 CPU를 할당하는 방식, 비선점 방식
  • 라운드 로빈(Round-Robin) : FCFS와 비슷하지만, 프로세스마다 CPU 사용 시간을 일정하게 할당하여 시간이 지나면 다음 프로세스에게 CPU 사용권을 넘김, 선점 방식
  • SJF(Shortest Job First) : 준비 큐에 대기하고 있는 프로세스 중 예상 실행 시간이 가장 짧은 것을 우선 처리, 비선점 방식
  • SRT(Shortest Recently Time) : 실행 중인 프로세스의 잔여 실행 시간과 준비 큐에서 대기 중인 프로세스의 잔여 실행 시간을 비교하여 가장 짧은 프로세스에게 CPU를 할당, 선점 방식
  • HRN(Highest Response Ratio Next) : 실행 시간이 길더라도 대기를 오래 했다면 우선 처리될 수 있도록 스케줄링할 때 매번 프로세스의 응답률(우선순위)을 계산, 응답률 = (대기 시간 + 실행 시간) / 실행 시간, 비선점 방식

 

'💻 Computer Science > OS' 카테고리의 다른 글

[OS] 교착상태  (0) 2023.12.18
[OS] IPC  (0) 2023.12.18
[OS] Process와 Thread  (0) 2023.12.15
[OS] 운영체제  (0) 2023.12.15
[OS] 컴퓨터 구성  (0) 2023.12.15