Em sistemas operacionais multitarefas e interativos é comum utilizar um algoritmo de escalonamento de processos. Um algoritmo amplamente usado é conhecido como
round-robin.
Nesse algoritmo, cada processo
A recebe um número. A CPU seleciona aleatoriamente
um dos processos em espera e o executa por um tempo fixo. Se esse tempo se esgota, a CPU seleciona
aleatoriamente outro processo para substituí-lo.
B possui um grau de importância que define sua ordem
em uma lista de espera. Na sua vez, o processo é
executado por um tempo fixo. Se esse tempo é ultrapassado, a CPU dá o controle para o próximo da lista,
e o processo que estava sendo executado volta para
uma posição à frente de todos os outros processos de
menor importância
C na fila de espera possui uma prioridade. As prioridades são usadas para calcular o intervalo de tempo que
o processo deve ficar na CPU, quanto maior a prioridade, maior o tempo. Quando esse tempo se esgota,
a CPU dá o controle para o próximo processo da lista,
e o processo que estava sendo executado vai para o
fim da lista.
D vai para uma fila de acordo com sua prioridade. As
filas de maior prioridade são executadas primeiro.
Cada fila é executada em ordem de chegada. Quando
todas as filas são executadas, inicia-se de novo pela
fila de maior prioridade.
E na lista de espera recebe um intervalo de tempo fixo
em que é permitido executar. Na sua vez, se esse intervalo é ultrapassado, a CPU dá o controle para o
próximo processo da lista, e o processo que estava
sendo executado vai para o fim da lista.