Learning
토픽 13 / 85·CPU 스케줄링

스케줄링 알고리즘

스케줄링 알고리즘

CPU를 어떤 프로세스에 할당할지 결정하는 규칙 및 정책

특징: 선점/비선점, 기아 가능성, 공정성, 응답성 트레이드오프

FCFS: 도착 순서대로 할당, 비선점, 기아 없음, Convoy Effect(긴 작업 뒤 대기)

SJF: 최단 burst 우선, 비선점, 최적 평균 대기시간, burst 예측 불가, 기아 가능

SRTF: SJF 선점형, 남은 시간 비교 선점, 이론적 최적, 잦은 컨텍스트 스위칭

Priority: 우선순위 기반, 선점/비선점, 기아→Aging 해결, 역전→PIP 해결

RR: 시간 할당량(q) 부여, 선점, 공정, 기아 없음, q 설정이 핵심(10-100ms)

MLQ(다단계 큐): 유형별 별도 큐, 큐 간 이동 불가, 각 큐 독립 알고리즘

MLFQ(다단계 피드백 큐): 큐 간 이동 허용, CPU-bound→하위 강등, I/O-bound→상위 유지, Boosting으로 기아 방지

비교표

적용사례: Linux CFS, Windows 우선순위 기반, Real-Time(EDF, Rate Monotonic)

연관: 스케줄링, Round Robin, 컨텍스트 스위칭, 시간 할당량