Pular para o conteúdo principal

Questão de Sistemas Operacionais — Gerência do Processador — INSTITUTO AOCP 2025

Sistemas OperacionaisGerência do Processador
Código
qg544121
Banca
INSTITUTO AOCP
Órgão
Prefeitura de Joinville - SC
Ano
2025
Nível
Superior
O processador é responsável por executar instruções e gerenciar processos em um computador. Um conceito importante relacionado ao processador é o escalonamento de processos, que define a ordem e o tempo em que cada processo recebe atenção do processador.Com base nesse assunto, qual dos seguintes algoritmos é preemptivo, alocando um quantum de tempo (tempo fixo) para cada processo em execução e utilizando uma fila circular?
  1. AFirst-Come, First-Served.
  2. BShortest Job Next.
  3. CPriority Scheduling.
  4. DRound Robin.
  5. ELongest Job First.
Revelar gabarito e comentário

GabaritoD — Round Robin.

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

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

Link permanente: /questoes/qg544121