RR

각 프로세스에 동일한 시간 할당량(Time Quantum)을 부여하고, 시간이 만료되면 다음 프로세스로 CPU를 넘기는 선점형 스케줄링 알고리즘입니다.

동작 방식

Time Quantum = 2ms 라고 가정

준비 큐: P1(6ms) → P2(4ms) → P3(2ms)

P1[2ms] → P2[2ms] → P3[2ms] → P1[2ms] → P2[2ms] → P1[2ms]
  완료X      완료X     완료O      완료X      완료O      완료O

Time Quantum의 영향

Time Quantum결과
너무 크면FCFS와 동일해짐
너무 작으면문맥 교환 비용 증가
적절한 값CPU 연산 시간의 80%가 Time Quantum 이내
일반적으로 10ms ~ 100ms 사이로 설정

장단점

장점단점
공평한 CPU 배분문맥 교환 비용 발생
응답성 좋음Time Quantum 설정이 중요
기아(Starvation) 없음순수 처리량은 SJF보다 낮음

문맥 교환 (Context Switch)

Time Quantum 만료 시
→ 현재 프로세스 상태 저장 (PCB에 저장)
→ 다음 프로세스 상태 복원
→ CPU 전환

문맥 교환 자체는 오버헤드 → Time Quantum이 작을수록 비용 증가

다른 알고리즘과 비교

FCFSSJFRound Robin
선점 여부XXO
기아 발생XOX
응답성낮음낮음높음
처리량보통최적보통
공평성XXO

Round Robin은 시분할 시스템에 적합하며, 현대 OS에서 우선순위와 결합하여 가장 널리 사용되는 스케줄링 방식입니다.

CSLOG에서 보기