Algoritmo de Programação Round Robin com Exemplo

O que é a Programação Round-Robin?

O nome deste algoritmo vem do princípio round-robin, onde cada pessoa recebe uma parte igual de algo em turnos. É o mais antigo e mais simples algoritmo de agendamento, que é usado principalmente para multitarefas.

No agendamento de round-robin, cada tarefa pronta é executada por turnos apenas em uma fila cíclica por uma fatia de tempo limitado. Este algoritmo também oferece a execução de processos sem fome.

Neste tutorial do sistema operacional, você aprenderá:

  • O que é a Programação de Robin Redondo?
  • Características da programação de round-robin
  • Exemplo de programação de round-robin
  • Vantagem da programação de round-robin
  • Desvantagens da programação de round-robin
  • Latência do pior caso

Características da programação de round-robin

Aqui estão as características importantes da programação de round-robin:

  • Round robin é um algoritmo preventivo
  • A CPU é deslocada para o processo seguinte após um tempo de intervalo fixo, que é chamado de tempo quantum/tempo fatia de tempo.
  • O processo que é preemptivo é adicionado ao fim da fila.
  • Round robin é um modelo híbrido que é movido pelo relógio
  • Time slice deve ser mínimo, que é atribuído para uma tarefa específica que precisa ser processada. Entretanto, ele pode diferir do SO para o SO.
  • É 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 no SO tradicional.

Exemplo de arredondamento…Robin Scheduling

Considerar os três processos seguintes

fila de processos Tempo de ruptura
P1 4
P2 3
P3 5

Passo 1) A execução começa com o processo P1, que tem tempo de rebentar 4. Aqui, cada processo executa-se durante 2 segundos. P2 e P3 ainda estão na fila de espera.

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

Passo 3) No tempo=4 , P2 é preemitido e adicionado no final da fila. P3 inicia a execução.

Passo 4) No momento=6 , P3 é preemitido e adicionado no final da fila. P1 inicia a execução.

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

Passo 6) P2 tem um tempo de explosão de 3. Ele já executou por 2 intervalos. No tempo=9, P2 completa a execução. Em seguida, P3 inicia a execução até completar.

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

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

Vantagem da Programação de Round-robin

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

  • Não enfrenta os 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ê sabe o número total de processos na fila de execução, então você também pode assumir o pior caso de tempo de resposta para o mesmo processo.
  • Este método de agendamento não depende do tempo de ruptura. É por isso que ele é facilmente implementável no sistema.
  • Após um processo ser executado para um conjunto específico do período, o processo é preemptado, e outro processo é executado para aquele período de tempo dado.
  • Permite ao SO usar o método de comutação de contexto para salvar estados de processos preemptados.
  • Permite o melhor desempenho em termos de tempo médio de resposta.

Desvantagens da Programação de Round-robin

Aqui, são desvantagens/cons de usar a programação de Round-robin:

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

Pior latência de casos

Este termo é usado para o tempo máximo de execução de todas as tarefas.

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

Formula:

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

Sumário:

  • O nome deste algoritmo vem do princípio round-robin, onde cada pessoa recebe uma parte igual de algo em turnos.
  • Round robin é um dos algoritmos mais antigos, justos e fáceis e métodos de agendamento amplamente utilizados nos sistemas operacionais tradicionais.
  • Round robin é um algoritmo pré-emptivo
  • A maior vantagem do método de agendamento de round-robin é que se você souber o número total de processos na fila de execução, então você também pode assumir o pior caso de tempo de resposta para o mesmo processo.
  • Este método gasta mais tempo na mudança de contexto
  • A latência de minúsculas é um termo usado para o tempo máximo necessário para a execução de todas as tarefas.

Deixe uma resposta

O seu endereço de email não será publicado.