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.
Etapa 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.







