Pular para o conteúdo principal

Questão de Sistemas Operacionais — Geral — FUNDATEC 2025

Sistemas OperacionaisGeral
Código
qa701161
Banca
FUNDATEC
Órgão
SBC
Ano
2025
Cargo
POSCOMP ( )
Tipicamente, a execução de um processo em um sistema operacional de tempo compartilhado caracteriza-se pela alternância entre ciclos de execução da CPU e ciclos de espera de E/S, até o seu término. Os tempos médios dos ciclos de execução da CPU e de espera de E/S denominaremos, respectivamente, exec_t e es_t. Considere um conjunto de processos que seguem esse padrão de alternância entre CPU e E/S, os quais executam sob um sistema operacional com escalonamento do tipo round-robin (RR) preemptivo. Assuma que o tempo médio para realizar uma troca de contexto seja dado por switch_t. Assinale a alternativa que melhor minimiza o tempo médio de turnaround dos processos.
  1. A(exec_t > switch_t) e (exec_t > quantum).
  2. B(exec_t < switch_t) e (exec_t < quantum).
  3. C(exec_t > switch_t) e (exec_t < quantum).
  4. D(exec_t < switch_t) e (exec_t > quantum).
  5. E(exec_t + switch_t) > quantum.
Revelar gabarito e comentário

GabaritoC — (exec_t > switch_t) e (exec_t < quantum).

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 Round-Robin: minimizando o turnaround

Gabarito: letra C. Para minimizar o tempo médio de turnaround em um sistema round-robin, o quantum deve ser maior que o tempo de troca de contexto (exec_t > switch_t) e menor que o tempo médio de CPU burst (exec_t < quantum). Isso equilibra a redução do overhead de trocas de contexto com a manutenção da responsividade do sistema.

O tempo de turnaround é o intervalo entre a chegada de um processo e sua conclusão, incluindo o tempo de execução, o tempo de espera na fila e o tempo gasto em trocas de contexto. Em um sistema round-robin, cada processo recebe um quantum de tempo da CPU; se o processo não termina dentro do quantum, ele é preemptado e vai para o final da fila de prontos. O overhead de cada preempção é o tempo de troca de contexto (switch_t).

Para minimizar o turnaround, precisamos considerar dois fatores conflitantes:

  1. Quantum muito pequeno: Se o quantum for muito pequeno, o número de trocas de contexto aumenta drasticamente, pois cada processo é interrompido com frequência. Cada troca de contexto consome tempo de CPU que não é usado para executar o processo, aumentando o turnaround. O overhead total devido às trocas de contexto é proporcional ao número de trocas, que é inversamente proporcional ao quantum.

  1. Quantum muito grande: Se o quantum for muito grande, o sistema se comporta como FCFS (First Come, First Served), e processos com bursts curtos de CPU podem sofrer com o efeito comboio, aumentando o turnaround médio. Além disso, a responsividade do sistema diminui, o que é indesejável em sistemas de tempo compartilhado.

Portanto, o quantum ideal deve ser maior que o tempo de troca de contexto para que o overhead não domine, mas menor que o tempo médio de CPU burst para que a preempção ainda ocorra com frequência suficiente para manter a responsividade. A alternativa C captura exatamente essa condição: exec_t > switch_t e exec_t < quantum.

NÃO CAIA NESSA!

A banca inverte a relação entre quantum e burst. Muitos candidatos pensam que o quantum deve ser maior que o burst para minimizar o turnaround, mas isso faria o sistema se comportar como FCFS, aumentando o turnaround médio. O correto é quantum menor que o burst para manter a preempção e a responsividade.

  1. 1exec_t > switch_t
  2. 2exec_t < quantum
  3. 3Menor turnaround
LEVEL · soulevel.com.br

Alternativa A — ❌ Incorreta

Afirma que exec_t > switch_t e exec_t > quantum. A primeira condição é correta, mas a segunda é exatamente o oposto do ideal. Se o quantum for maior que o burst, o processo não será preemptado durante seu burst, e o sistema se comporta como FCFS, aumentando o turnaround médio. O erro está em inverter a relação entre quantum e burst.

Alternativa B — ❌ Incorreta

Afirma que exec_t < switch_t e exec_t < quantum. A primeira condição é incorreta, pois se o tempo de troca de contexto for maior que o burst, o overhead domina e o turnaround aumenta. A segunda condição é correta, mas a primeira invalida a alternativa. O erro está em inverter a relação entre burst e switch_t.

Alternativa C — ✅ Correta ⟵ GABARITO

Afirma que exec_t > switch_t e exec_t < quantum. Ambas as condições são corretas: o burst deve ser maior que o tempo de troca de contexto para que o overhead não domine, e o quantum deve ser menor que o burst para que a preempção ocorra e a responsividade seja mantida. Isso minimiza o turnaround médio.

Alternativa D — ❌ Incorreta

Afirma que exec_t < switch_t e exec_t > quantum. Ambas as condições são incorretas: o burst deve ser maior que o switch_t, e o quantum deve ser menor que o burst. A alternativa inverte ambas as relações, resultando em alto overhead e comportamento FCFS.

Alternativa E — ❌ Incorreta

Afirma que (exec_t + switch_t) > quantum. Essa condição é insuficiente e não garante a minimização do turnaround. Ela não especifica a relação entre exec_t e switch_t, nem entre exec_t e quantum, que são os fatores críticos. A condição correta é exec_t > switch_t e exec_t < quantum.

Gabarito: letra C

Link permanente: /questoes/qa701161