Questão de Sistemas Operacionais — Geral — VUNESP 2024
Sistemas Operacionais›Geral
Código
vu212427
Banca
VUNESP
Órgão
DESENVOLVE SP
Ano
2024
Cargo
Ana Sis ( )
Em um sistema operacional típico, um processo pode estar, em um dado momento, em um dos estados apresentados na figura a seguir: Supondo-se que um processo que esteja em execução requeira uma determinada entrada que ainda não está disponível, esse processo
Acontinuará no estado “Em execução” até que a entrada esteja disponível para ele.
Bexibirá uma mensagem de erro, exigindo que o usuário reinicie o sistema operacional.
Cserá levado ao estado “Bloqueado”.
Dserá finalizado, não permanecendo em nenhum dos estados apresentados no diagrama.
Eserá levado ao estado “Pronto”.
Revelar gabarito e comentário▾
GabaritoC — será levado ao estado “Bloqueado”.
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”.
Estados de um processo em sistemas operacionais
Gabarito: letra C. Quando um processo em execução solicita uma operação de entrada/saída (E/S) que ainda não está disponível, ele não pode continuar usando a CPU e é movido para o estado Bloqueado (também chamado de estado de espera). Essa é uma transição clássica do ciclo de vida de um processo, prevista nos modelos de estados de processos da maioria dos sistemas operacionais.
O ciclo de vida de um processo descreve os estados pelos quais ele passa desde sua criação até sua terminação. Os estados mais comuns são: Novo (processo sendo criado), Pronto (processo aguardando a CPU), Executando (processo usando a CPU), Bloqueado (processo aguardando um evento, como uma operação de E/S) e Terminado (processo finalizado). A transição entre esses estados é gerenciada pelo escalonador e pelo subsistema de E/S do sistema operacional.
A razão pela qual o processo vai para o estado Bloqueado é que ele não pode prosseguir sem o recurso solicitado. Se ele permanecesse em execução, estaria desperdiçando a CPU, pois não poderia fazer progresso. Ao ser bloqueado, o processo libera a CPU para que outro processo possa executar, otimizando o uso do processador. Quando a operação de E/S é concluída, o processo é movido de volta para o estado Pronto, aguardando sua vez de usar a CPU novamente.
Um exemplo prático: um programa de edição de texto solicita a leitura de um arquivo do disco. Enquanto o disco não retorna os dados, o processo do editor não pode continuar processando. O sistema operacional, então, o coloca no estado Bloqueado e permite que outros processos, como um reprodutor de música, usem a CPU. Quando a leitura do arquivo termina, o editor volta para a fila de prontos e, quando o escalonador o seleciona, ele retoma a execução.
A distinção crucial é entre os estados Bloqueado e Pronto. Um processo no estado Pronto está apto a executar, mas está aguardando a CPU. Um processo no estado Bloqueado não está apto a executar, pois está aguardando um evento externo (como uma operação de E/S). Essa diferença é fundamental para entender o escalonamento de processos.
A pegadinha que a banca explora é a confusão entre os estados Bloqueado e Pronto. O candidato pode pensar que, ao solicitar uma entrada, o processo vai para o estado Pronto, mas isso está incorreto. O processo só vai para o estado Pronto quando o evento que ele aguardava (a entrada) é concluído. Enquanto a entrada não está disponível, o processo permanece Bloqueado.
Guarde a fronteira entre Bloqueado e Pronto: é exatamente nela que as alternativas se dividem.
1Novo
2Pronto
3Executando
4Bloqueado (aguarda E/S)
5Pronto
6Executando
7Terminado
LEVEL · soulevel.com.br
Alternativa A — ❌ Incorreta
Afirma que o processo continuará em execução até que a entrada esteja disponível. Isso é incorreto, pois o processo não pode continuar usando a CPU se está aguardando um recurso. Ele seria bloqueado para liberar a CPU para outros processos.
Alternativa B — ❌ Incorreta
Afirma que o processo exibirá uma mensagem de erro e exigirá que o usuário reinicie o sistema. Isso é incorreto, pois a espera por uma entrada é uma situação normal e não um erro. O sistema operacional gerencia essa espera de forma transparente, sem interromper o funcionamento do sistema.
Alternativa C — ✅ Correta ⟵ GABARITO
O processo será levado ao estado Bloqueado. Isso ocorre porque ele não pode prosseguir sem a entrada solicitada. Ao ser bloqueado, ele libera a CPU para que outros processos possam executar. Quando a entrada estiver disponível, o processo será movido para o estado Pronto e, posteriormente, para Executando.
Alternativa D — ❌ Incorreta
Afirma que o processo será finalizado. Isso é incorreto, pois a espera por uma entrada não é um motivo para terminar o processo. O processo será bloqueado e, quando a entrada estiver disponível, continuará sua execução normalmente.
Alternativa E — ❌ Incorreta
Afirma que o processo será levado ao estado Pronto. Isso é incorreto, pois o processo não está apto a executar enquanto aguarda a entrada. Ele só irá para o estado Pronto quando a entrada estiver disponível. Enquanto isso, ele permanece no estado Bloqueado.