Algoritmo de agendamento Round Robin com exemplo

O que é agendamento Round-Robin?

O nome desse algoritmo vem do princípio round-robin, onde cada pessoa recebe uma parte igual de algo por sua vez. É o algoritmo de agendamento mais antigo e simples, usado principalmente para multitarefa.

No escalonamento Round-robin, cada tarefa pronta é executada passo a passo apenas em uma fila cíclica por um intervalo de tempo limitado. Este algoritmo também oferece execução de processos sem fome.

Características do agendamento Round-Robin

Aqui estão as características importantes do agendamento Round-Robin:

  • Round robin é um algoritmo preventivo
  • A CPU é deslocada para o próximo processo após um intervalo de tempo fixo, que é chamado de quantum/fatia de tempo.
  • O processo interrompido é adicionado ao final da fila.
  • Round robin é um modelo híbrido movido por relógio
  • O intervalo de tempo deve ser mínimo, atribuído a uma tarefa específica que precisa ser processada. No entanto, pode diferir de sistema operacional para sistema operacional.
  • É um algoritmo em tempo real que responde ao evento dentro de um limite de tempo específico.
  • Round robin é um dos algoritmos mais antigos, justos e fáceis.
  • Método de agendamento amplamente utilizado em sistemas operacionais tradicionais.

Exemplo de agendamento round-robin

Considere isto a seguir três processos

Fila de Processo Tempo de explosão
P1 4
P2 3
P3 5

Agendamento round-robin

Passo 1) A execução começa com o processo P1, que possui tempo de burst 4. Aqui, cada processo é executado por 2 segundos. P2 e P3 ainda estão na fila de espera.

Agendamento round-robin

Passo 2) No tempo =2, P1 é adicionado ao final da Fila e P2 começa a executar

Agendamento round-robin


Passo 3) Em time=4 , P2 é preemptado e adicionado no final da fila. P3 começa a executar.

Agendamento round-robin

Passo 4) Em time=6 , P3 é preemptado e adicionado no final da fila. P1 começa a executar.

Agendamento round-robin

Passo 5) Em time=8 , P1 tem um tempo de burst de 4. Ele concluiu a execução. P2 inicia execução

Agendamento round-robin

Passo 6) P2 tem tempo de burst de 3. Já foi executado por 2 intervalos. No tempo=9, P2 completa a execução. Então, P3 inicia a execução até terminar.

Agendamento round-robin

Passo 7) Vamos calcular o tempo médio de espera para o exemplo acima.

Wait time 
P1= 0+ 4= 4
P2= 2+4= 6
P3= 4+3= 7

Vantagem do agendamento Round-robin

Aqui estão os prós/benefícios do método de agendamento Round-robin:

  • Não enfrenta problemas de fome ou efeito de comboio.
  • Todos os trabalhos recebem uma alocação justa de CPU.
  • Lida com todos os processos sem qualquer prioridade
  • Se você souber o número total de processos na fila de execução, também poderá assumir o tempo de resposta do pior caso para o mesmo processo.
  • Este método de agendamento não depende do tempo de intermitência. É por isso que é facilmente implementável no sistema.
  • Depois que um processo é executado por um determinado período de tempo, o processo é preemptado e outro processo é executado por esse determinado período de tempo.
  • Permite que o sistema operacional use o método de alternância de contexto para salvar estados de processos preemptados.
  • Oferece o melhor desempenho em termos de tempo médio de resposta.

Desvantagens do agendamento round-robin

Aqui estão as desvantagens/contras do uso do agendamento Round-robin:

  • Se o tempo de fatiamento do sistema operacional for baixo, a saída do processador será reduzida.
  • Este método gasta mais tempo na troca de contexto
  • Seu desempenho depende muito do quantum do tempo.
  • Não é possível definir prioridades para os processos.
  • O agendamento round-robin não dá prioridade especial a tarefas mais importantes.
  • Diminui a compreensão
  • O quantum de tempo mais baixo resulta em maior sobrecarga de troca de contexto no sistema.
  • Encontrar um quantum de tempo correto é uma tarefa bastante difícil neste sistema.

Pior caso de latência

Este termo é utilizado para o tempo máximo necessário para a execução de todas as tarefas.

  • dt = Indica o tempo de detecção quando uma tarefa é trazida para a lista
  • st = denota o tempo de mudança de uma tarefa para outra
  • et = Indica o tempo de execução da tarefa

Fórmula:

Tworst = {(dti+ sti + eti ), + (dti+ sti + eti )2 +...+ (dti+ sti + eti )N., + (dti+ sti + eti  + eti) N} + tISR	
t,SR = sum of all execution times

Resumo

  • O nome desse algoritmo vem do princípio round-robin, onde cada pessoa recebe uma parte igual de algo por sua vez.
  • Round robin é um dos algoritmos mais antigos, mais justos e mais fáceis e um dos métodos de escalonamento amplamente utilizados no mercado tradicional. OS.
  • Round robin é um algoritmo preventivo
  • A maior vantagem do método de agendamento round-robin é que, se você souber o número total de processos na fila de execução, também poderá assumir o tempo de resposta do pior caso para o mesmo processo.
  • Este método gasta mais tempo na troca de contexto
  • Latência de pior caso é um termo usado para designar o tempo máximo necessário para a execução de todas as tarefas.