1
Linux CFS
실행 시간이 적은 태스크를 먼저 골라 CPU 몫의 차이를 줄입니다.
T2
2.1 T1
4.8 T3
7.0
작은 vruntime 선택 → 실행 후 오른쪽으로 이동
2.1 T1
4.8 T3
7.0
실제 운영체제의 스케줄러는 단순한 FIFO, SJF, Round Robin 표를 그대로 옮긴 구현이 아닙니다. 수천 개의 실행 단위와 여러 코어 사이에서 공정성, 응답성, cache locality, 우선순위 반전을 함께 조정하는 엔지니어링 계층입니다.
vruntime, 우선순위, 레드-블랙 트리 선택 기준을 바탕으로 현대 스케줄러가 공정성을 맞추는 방식을 봅니다.
실행 시간이 적은 태스크를 먼저 골라 CPU 몫의 차이를 줄입니다.
준비된 스레드 중 가장 높은 우선순위 큐를 선택하고 필요하면 선점합니다.
코어별 실행 큐를 유지하되 부하와 캐시 지역성 사이에서 이동을 조정합니다.