1. 라운드 로빈이란?
라운드 로빈 알고리즘은 시간 분할을 통해 여러 프로세스 간의 CPU를 공평하게 할당하는
선점 스케줄링 알고리즘이다.
라운드 로빈은 선점 스케줄링이기 때문에 다른 프로세스가 실행되는 동안 우선순위가 더 높은
프로세스가 도착하면 현재 실행 중인 프로세스가 선점되어 대기열에 다시 배치 될 수 있다.
2. 동작 과정
1. 최대 CPU 시간을 나타내는 고정 시간이 할당된 실행 준비된 모든 프로세스가 대기열에 배치
2. CPU 스케줄러가 대기열 앞의 프로세스를 실행
3. 실행을 완료했다면 대기열에서 제거, 그렇지 않다면 대기열 맨 뒤에 배치
3. 사용이유
1. 프로세스에 일정한 CPU 시간 할당량을 부여하기 때문에 공정한 실행을 보장해준다.
2. 프로세스가 CPU를 기다리는 시간을 최소화 하여 빠른 응답이 가능하기 때문에 실시간 시스템에 유리하다.
(다만 할당되는 시간이 클 경우 FIFO 기법과 같아진다.)
3. 라운드 로빈은 프로세스가 일정한 시간을 가지고 있기 때문에 프로세스 완료 시간을 예측할 수있다.
'간단한 IT 지식' 카테고리의 다른 글
[오늘의 지식] Unity에서 Enum형을 받을 때 주의점 (0) | 2024.02.23 |
---|---|
[오늘의 지식] NGUI, UGUI (0) | 2024.02.22 |
[오늘의 지식] L Value, R value (0) | 2024.02.20 |
[오늘의 지식] 버퍼 오버플로우(Buffer Overflow) (0) | 2024.02.19 |
[오늘의 지식] 어드레서블 에셋 (0) | 2024.02.16 |