일정의 작업량을 주고, 그 량만큼만 일을 한후, 다음프로세스로 넘어가도록 하는 것이 기본원리입니다.
쉽게 예를듭시다.
1번 작업 : 10 2번작업 : 6, 3번작업 : 3 4번작업: 12 5번작업: 8
이런 작업들이 대기를 하고 있고, CPU는 한개일때...
RR 방식, 또한 한 텀당 일은 3 만큼 할 수 있다고 가정합니다.
1번작업부터 차례로 3씩 처리하며, 돌아가며 3씩 처리하는 방식이라고 생각하면 쉽습니다.
1 : 1-7,2-6,3-3,4-12,5-8
(1번째 Term -> 1번작업 : 7남음, 2번작업 : 6남음, 3번작업 : 3남음, 4번작업 :12남음, 5번작업 : 8남음)
2 : 1-7,2-3,3-3,4-9,5-8
3 : 1-7,2-3,3-완료,4-9,5-8
4: 1-7,2-3,4-6,5-8
5: 1-7,2-3,4-6,5-5
6: 1-4,2-3,4-6,5-5
7: 1-4,2-완료,4-6,5-5
8: 1-4,4-3,5-5
9: 1-3,4-3,5-2
10: 1-완료, 4-3,5-2
11: 4-완료,5-2
12: 5-완료
이렇게 해서 CPU는 12번의 일을 합니다. 이렇게 나누어서 일을 처리함으로서..
각각의 작업들에 대해 동등하게 처리를 해주는 것이 Round Robin 입니다.
'[알고리즘]' 카테고리의 다른 글
Checksum 계산 방법 (0) | 2012.09.13 |
---|---|
패리티 비트(parity bit)를 사용한 에러 검출방법 (0) | 2012.09.05 |
CRC(Cyclic Redundancy Check) : CRC-16, CRC-32에 대한 설명과 구현 (0) | 2012.08.14 |
What is Delta Encoding? (0) | 2012.08.01 |
Huffman coding의 정의와 예제 (2) | 2012.08.01 |