Round-robin
Origem: Wikipédia, a enciclopédia livre.
Este artigo ou seção precisa ser wikificado. Por favor ajude a formatar este artigo de acordo com as diretrizes estabelecidas no livro de estilo. (Maio de 2008) |
Round-Robin é um algoritmo escalonador de processos que utiliza um temporizador.
[editar] Escalonamento de Processos
O algoritmo de escalonamento Round-Robin é um dos mais antigos e simples algoritmos, além de ser totalmente imune a problemas de starvation. É usado em projetos de sistemas operacionais multitarefa, e foi projetado especialmente para sistemas time-sharing, pois este algoritmo depende de um temporizador (Timer).
[editar] Funcionamento
O funcionamento desde algoritmo acontece da seguinte forma: uma unidade de tempo, denominada quantum, é definida pelo sistema operacional, onde determina o período de tempo entre cada sinal de interrupção. Todos os processos são armazenados em uma fila circular. Como no exemplo abaixo.
Cada processo e retirado da primeira posição da fila de prontos e recebe o processador para a sua execução. Se o processo não termina após o quantum, ocorre uma preempção e o processo vai para o fim da fila de prontos. Se o processo termina antes do período de quantum, o processador é liberado para a execução do processo que estiver no início da fila. Todo processo que chega à fila de prontos e inserido no final da mesma.
Quando um processo é retirado da fila para o processador, ocorre uma troca de contexto, o que resulta num tempo adicional na execução do processo. Outro exemplo mais complexo do seu funcionamento.
[editar] Ligações externas
- Scheduling algorithm em inglês
- Process (computing) em inglês
- Process states em inglês
- Automated planning and scheduling em inglês
- Dynamic priority scheduling em inglês
- Escalonamento de Processos