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 |
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.
Passo 2) No tempo =2, P1 é adicionado ao final da Fila e P2 começa a executar
Passo 3) Em time=4 , P2 é preemptado e adicionado no final da fila. P3 começa a executar.
Passo 4) Em time=6 , P3 é preemptado e adicionado no final da fila. P1 começa a executar.
Passo 5) Em time=8 , P1 tem um tempo de burst de 4. Ele concluiu a execução. P2 inicia execução
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.
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.