[운영체제] CPU 스케줄링 알고리즘 - 선점형 스케줄링 (Round Robin, SRTF)

강민혁·2023년 3월 13일
0

기술면접 | 운영체제

목록 보기
15/32

CPU 스케줄링 알고리즘 - 선점형 스케줄링 (Round Robin, SRTF)에 대해 설명하세요

Keyword

time slice, 실행 시간 추정, 평균 응답 시간


Script

라운드 로빈 스케줄링(RR, Round Robin Scheduling)은 선입 선처리 스케줄링(FCFS)에 time slice라는 개념이 더해진 스케줄링 방식입니다. time slice는 process가 CPU를 사용할 수 있도록 정해진 시간을 의미하는데, 라운드 로빈 스케줄링은 정해진 time slice만큼의 시간동안만 CPU를 사용하며 Process를 실행합니다. 이때, time slice의 크기를 너무 작게 하면 context switching의 overhead의 부작용이 발생할 수도 있고, 너무 크게 하면 사실상 FCFS와 다를게 없어집니다.

최소 잔여 시간 우선 스케줄링(SRTF, Shortest Remaining Time First)은 최단 작업 우선 스케줄링(SJF)와 라운드 로빈(RR)을 합친 방식입니다. SRTF는 각 process가 정해진 time slice만큼만 CPU를 점유하면서, 그 우선 순위는 남아있는 작업 시간이 가장 적은 Process를 선택합니다. SRTF의 경우, Process 생성 시에 총 실행 시간을 추정하는 작업이 필요하고, 실행 시간이 긴 Process들의 평균 응답 시간이 길어진다는 단점이 있습니다.


Additional


Reference

Book - 혼자 공부하는 컴퓨터 구조+운영체제

SRTF 스케줄링

profile
with programming

0개의 댓글