Blog

Real Estate and Mortgage Blog

rr 스케줄링 예제

참고: 라운드 로빈 스케줄링 알고리즘에서는 퀀텀이 컨텍스트 스위칭을 감소시키는 시간이 증가합니다. 시간 양자 값의 증가는 많은 프로세스를 보류할 수 있는 시간 기아를 초래합니다. 따라서 시간 양자는 크거나 작아서는 안됩니다. 알고리즘에 따르면 준비 된 큐와 Gantt 차트를 유지 해야합니다. 모든 일정 후에 두 데이터 구조의 구조가 변경됩니다. 라운드 로빈 스케줄링을 이해하기 위해 100ms의 양자 시간과 프로세스의 도착 시간과 프로세스의 실행 시간을 다음 표를 고려 : 많은 방송국이 하나의 주파수 채널을 공유 중앙 집중식 무선 패킷 라디오 네트워크에서, 일정 중앙 기지국의 알고리즘은 원형 로빈 방식으로 이동 국에 대한 시간 슬롯을 예약하고 공정성을 제공 할 수 있습니다. 그러나 링크 적응을 사용하는 경우 채널 조건이 다르기 때문에 특정 양의 데이터를 “고가의” 사용자에게 전송하는 데 훨씬 더 오랜 시간이 소요됩니다. 채널 조건이 개선될 때까지 전송을 기다리는 것이 더 효율적일 수 있으며, 적어도 저렴한 사용자에게 일정 우선 순위를 부여하는 것이 더 효율적일 것입니다. 라운드 로빈 스케줄링은 이를 활용하지 않습니다. 더 높은 처리량 및 시스템 스펙트럼 효율성은 채널 종속 스케줄링(예: 비례적으로 공정한 알고리즘 또는 최대 처리량 스케줄링)에 의해 달성될 수 있습니다. 후자는 바람직하지 않은 스케줄링 기아가 특징입니다.

이러한 유형의 스케줄링은 순환 큐 데이터 구조를 통해 구현할 수 있는 컴퓨터의 운영 체제에 대한 매우 기본적인 알고리즘 중 하나입니다. 라운드 로빈 스케줄링 알고리즘은 작업 스케줄링에서 중요한 스케줄링 알고리즘 중 하나입니다. 선제적 스케줄링 알고리즘입니다. 라운드 로빈은 시간 양자라는 프로세스의 실행을 위해 시간 조각(고정 기간)을 사용합니다. – 지정된 기간 동안 프로세스가 실행되면 프로세스가 선점되고 다음 프로세스 실행이 지정된 기간 동안 시작됩니다. – 라운드 로빈 스케줄링은 컨텍스트 전환을 사용하여 선점된 프로세스의 상태를 저장합니다. 예를 들어 CPU 바인딩 된 작업은 한 큐에서 예약할 수 있으며 다른 큐의 모든 I/O 바인딩 된 작업을 예약할 수 있습니다. 그런 다음 프로세스 스케줄러는 각 큐에서 작업을 번갈아 선택하고 큐에 할당된 알고리즘에 따라 CPU에 할당합니다. 다음 예제에서는 P1, P2, P3, P4, P5 및 P6라는 6개의 프로세스가 있습니다. 그들의 도착 시간과 버스트 시간은 테이블에 아래에 주어진다.

시스템의 시간 양자는 4 단위입니다. 라운드 로빈 스케줄링을 제공하는 멀티플렉서, 스위치 또는 라우터에는 모든 데이터 흐름에 대해 별도의 큐가 있으며, 여기서 데이터 흐름은 소스 및 대상 주소로 식별될 수 있습니다. 이 알고리즘을 사용하면 큐에 데이터 패킷이 있는 모든 활성 데이터 흐름이 주기적으로 반복되는 순서로 공유 채널의 패킷을 전송할 수 있습니다. 스케줄링은 작업 보존이므로 한 흐름이 패킷에서 벗어난 경우 다음 데이터 흐름이 그 자리를 대신합니다. 따라서 일정은 링크 리소스가 사용되지 않도록 합니다. 단일 프로세서 시스템에서 실행되는 네 개의 작업은 A, B, C, D 순서로 0시에 도착합니다. 그들의 버스트 CPU 시간 요구 사항은 각각 4, 1, 8, 1 시간 단위입니다. 한 시간 단위의 시간 조각을 가진 라운드 로빈 스케줄링 에서 A의 완료 시간은- 다중 수준 큐는 독립적인 스케줄링 알고리즘이 아닙니다. 다른 기존 알고리즘을 사용하여 공통특성을 가진 작업을 그룹화하고 예약합니다. 보장되거나 차별화된 서비스 품질이 제공되는 경우, 최상의 통신, 적자 라운드 로빈(DRR) 스케줄링, 가중 라운드 로빈(WRR) 스케줄링 또는 가중 공정 대기열(WFQ)을 고려할 수 있습니다.