라운드 로빈 스케줄링
라운드 로빈 스케줄링은 실행 가능한 작업마다 정해진 시간 할당량을 순서대로 배분한다 CPU·작업 스케줄링 분야에서 이 문제를 해결하기 위한 계산 모델을 제공하며, 실제 구현에서는 상태를 표현하는 방법과 단계별 조건을 정의해야 한다. 알고리즘의 목표, 최적성 또는 오차의 보장 여부는 사용...
| 분류 | 알고리즘 · CPU·작업 스케줄링 |
|---|---|
| 해결 문제 | 실행 가능한 작업마다 정해진 시간 할당량을 순서대로 배분한다 |
| 핵심 절차 | 준비 큐의 맨 앞 프로세스에 시간 퀀텀을 부여하고 작업이 종료·대기·시간 만료하면 다음 작업으로 전환한다 |
| 연산·성능 | 스케줄러 결정은 큐 구현에 따라 O(1), 문맥 전환 비용은 퀀텀에 의존 |
| 사용 전제 | 시간 퀀텀·우선순위 정책·I/O 대기와 프로세스 상태 전이를 정의해야 한다 |
| 참고 자료 | 관련 기술 문서 |
| 관련 기술 | 알고리즘, 계산 복잡도 |
라운드 로빈 스케줄링은 실행 가능한 작업마다 정해진 시간 할당량을 순서대로 배분한다 CPU·작업 스케줄링 분야에서 이 문제를 해결하기 위한 계산 모델을 제공하며, 실제 구현에서는 상태를 표현하는 방법과 단계별 조건을 정의해야 한다. 알고리즘의 목표, 최적성 또는 오차의 보장 여부는 사용하는 계산 모델에 따라 해석한다.[1]
동작 방식은 준비 큐의 맨 앞 프로세스에 시간 퀀텀을 부여하고 작업이 종료·대기·시간 만료하면 다음 작업으로 전환한다. 퀀텀이 끝난 미완료 작업은 큐 뒤로 이동한다. 각 처리 단계에서 상태·값·데이터 구조의 의미가 유지되도록 구현하고, 알고리즘의 종료 또는 수렴을 판정하는 조건을 함께 둔다.
복잡도 및 실행 조건은 스케줄러 결정은 큐 구현에 따라 O(1), 문맥 전환 비용은 퀀텀에 의존 올바른 활용에는 시간 퀀텀·우선순위 정책·I/O 대기와 프로세스 상태 전이를 정의해야 한다 입력의 크기, 데이터 분포와 처리 환경이 달라질 때 성능 또는 결과가 어떻게 달라지는지도 중요한 평가 대상이다.
구체적인 적용을 보면 시분할 운영체제의 상호작용 응답성 확보에 사용한다. 너무 짧은 퀀텀은 문맥 전환을 늘리고 너무 긴 퀀텀은 FCFS와 유사해진다. 다른 방법과 비교할 때 계산 비용, 결과의 정확성, 입력 전제 및 구현 복잡성에 따라 적절한 기법을 선택하게 된다. 원래 모델의 전제가 성립하는지를 확인하면 실용적인 코드 구현과 이론 분석을 연결할 수 있다.[2]