스케줄링(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 |