Task 들에 대한 스케줄링 방식 중 라운드 로빈 스케줄링에 대해서 설명해보세요.
라운드 로빈(round robin)
스케줄링(scheduling)의 한 방법이며, 다중 처리에서 태스크의 실행 순서를 사이클릭(cyclic)으로 실행하는 방법 등에 사용되고 있다. 예를 들면 A, B, C의 3개의 태스크가 있을 경우 A→B →C→A→B→C→A→ 와 같이 전환된다.
태스크에 우선도가 주어졌을 경우에는 태스크를 우선도에 의해서 그룹 분할하고, 각 그룹 내에서 라운드 로빈이 실행된다. 이것에 의해 그룹 내의 각 태스크는 평등하게 CPU 시간이 할당된다.
▲ 라운드 로빈의 개념
선점형 스케줄링의 하나로서, 프로세스들 사이에 우선순위를 두지 않고, 순서대로 시간단위(Time Quantum)로 CPU를 할당하는 방식의 CPU 스케줄링 알고리즘이다.
보통 시간 단위는 10 ms ~ 100 ms 정도이다. 시간 단위동안 수행한 프로세스는 준비 큐의 끝으로 밀려나게 된다. 문맥 전환의 오버헤드가 큰 반면, 응답시간이 짧아지는 장점이 있어 실시간 시스템에 유리하다.
라운드 로빈은 사발통문과 같이 사람의 이름을 순서대로 적는 것이 아니라 원형으로 적어 조직의 서열을 숨기는 서명 방식이다.
커뮤니티 Q&A
위 이론과 관련된 게시글이에요.
이해가 안 되거나 궁금한 점이 있다면 커뮤니티에 질문해 보세요!
게시글 작성하기