Escalonamento de Processos: Round Robin
Gabarito: letra D. O algoritmo Round Robin é preemptivo, aloca um quantum (fatia de tempo fixa) para cada processo e utiliza uma fila circular para organizar a execução. É exatamente a definição apresentada no enunciado.
O escalonamento de processos é uma das funções centrais do sistema operacional. Ele define qual processo, dentre os prontos, receberá a CPU e por quanto tempo. Os algoritmos de escalonamento podem ser classificados em duas grandes famílias: preemptivos e não preemptivos.
Não preemptivos (cooperativos): uma vez que o processo recebe a CPU, ele a mantém até terminar ou bloquear voluntariamente (por exemplo, aguardando uma operação de E/S). O processo não é interrompido pelo escalonador.
Preemptivos: o processo pode ser interrompido pelo escalonador, mesmo que não tenha terminado. Isso permite que o sistema operacional garanta que todos os processos recebam uma parcela do tempo do processador, criando a ilusão de execução simultânea em sistemas monoprocessados.
O Round Robin (RR) é o algoritmo preemptivo mais simples e um dos mais utilizados. Ele foi projetado para sistemas de tempo compartilhado (time-sharing), onde a interatividade é essencial. Seu funcionamento é baseado em um temporizador (timer) que gera interrupções periódicas. Cada processo pronto recebe uma fatia de tempo fixa, chamada de quantum. Se o processo terminar antes do quantum, a CPU é liberada imediatamente. Se o quantum expirar e o processo ainda não tiver terminado, ele é preemptado (interrompido) e colocado no final da fila circular, aguardando sua próxima vez. Esse mecanismo garante que nenhum processo fique esperando indefinidamente (evita o problema de starvation ou inanição).
Para visualizar, imagine três processos P1, P2 e P3, todos com tempo de execução de 100 ms, e um quantum de 50 ms. O escalonador executa P1 por 50 ms, depois P2 por 50 ms, depois P3 por 50 ms. Como nenhum terminou, ele volta para P1, executando mais 50 ms, e assim por diante, até todos terminarem. A ordem de execução é circular: P1 → P2 → P3 → P1 → P2 → P3...
A principal distinção que a banca explora é entre os algoritmos preemptivos e não preemptivos. Enquanto o Round Robin é preemptivo, o FCFS e o SJF são não preemptivos. O Priority Scheduling pode ser preemptivo ou não, mas não utiliza fila circular nem quantum fixo. O Longest Job First é uma variação do SJF, também não preemptivo. Guarde essa fronteira: preemptivo + quantum + fila circular = Round Robin.
Alternativa A — ❌ Incorreta
O First-Come, First-Served (FCFS) é um algoritmo não preemptivo. Ele executa os processos na ordem de chegada, do início ao fim, sem interrompê-los. Não há quantum nem fila circular; apenas uma fila simples (FIFO). O erro está em classificá-lo como preemptivo.
Alternativa B — ❌ Incorreta
O Shortest Job Next (SJN) ou Shortest Job First (SJF) é um algoritmo não preemptivo que seleciona o processo com o menor tempo de execução estimado. Ele não utiliza quantum nem fila circular. O erro está em classificá-lo como preemptivo e com quantum.
Alternativa C — ❌ Incorreta
O Priority Scheduling é um algoritmo que executa os processos com base em sua prioridade. Ele pode ser preemptivo ou não, mas não utiliza um quantum fixo nem uma fila circular. O processo de maior prioridade é executado primeiro, e processos de menor prioridade podem sofrer starvation. O erro está em associá-lo a quantum e fila circular.
Alternativa D — ✅ Correta ⟵ GABARITO
O Round Robin é o algoritmo que se encaixa perfeitamente na descrição: é preemptivo, aloca um quantum (tempo fixo) para cada processo e utiliza uma fila circular para organizar a execução. Quando o quantum expira, o processo é interrompido e vai para o final da fila, garantindo que todos os processos recebam a CPU de forma justa e cíclica.
Alternativa E — ❌ Incorreta
O Longest Job First (LJF) é um algoritmo não preemptivo que seleciona o processo com o maior tempo de execução estimado. Ele é o oposto do SJF e, assim como ele, não utiliza quantum nem fila circular. O erro está em classificá-lo como preemptivo e com quantum.
Gabarito: letra D