Questão nº 55

Questão de Sistemas Operacionais · FCC TRE-PR 2017 (nº 55)

FCC2017Analista Judiciário - Área Apoio Especializado - Especialidade Análise de SistemasSistemas Operacionais
Gabarito: Bver comentário ↓

Consider the figure below showing a hypothetical situation.

Figura da questão de Sistemas Operacionais

A criminal holds an hostage and against that, a cop (policeman) also holds an hostage who is a friend of the criminal. In this case, criminal is not going to let the hostage go if cop won't let his friend to let go. Also the cop is not going to let the friend of criminal let go, unless the criminal releases the hostage.

Analysing the situation from an Operational System´s point of view, a correct conclusion is

Resposta comentada

Gabarito Alternativa B

Deadlock (ou impasse) acontece quando dois ou mais processos ficam parados indefinidamente, cada um esperando por um recurso que está sendo segurado por outro processo, formando um ciclo. Já a starvation (ou inanição) ocorre quando um processo é repetidamente impedido de acessar um recurso ou a CPU, mesmo que o recurso esteja disponível, geralmente por causa de políticas de agendamento que favorecem outros processos.

  • (A) Incorreta: Esta alternativa descreve uma situação de concorrência por um recurso, que pode levar à starvation se um processo for consistentemente preterido, mas não é a definição de starvation em si. Starvation é a consequência de ser repetidamente negado, não apenas a tentativa simultânea de acesso.
  • (B) Correta: Esta é a definição clássica de um deadlock. No cenário, o criminoso (thread 1) segura o refém (recurso 1) e precisa do amigo (recurso 2). O policial (thread 2) segura o amigo (recurso 2) e precisa do refém (recurso 1). Ambos estão em um ciclo de espera mútua, cada um segurando o que o outro precisa, e nenhum liberará seu recurso primeiro.
  • (C) Incorreta: A frase é confusa e não descreve um conceito padrão de sistemas operacionais. Um "lock" é um mecanismo de controle de acesso, não uma situação de espera como descrita. A ideia de um thread segurar um recurso "depois que ele termina" geralmente indica um erro de programação ou vazamento de recurso, não um tipo de impasse.
  • (D) Incorreta: Esta alternativa é extremamente mal formulada e gramaticalmente confusa, não apresentando uma definição coerente de starvation ou qualquer outro conceito relevante em sistemas operacionais.
  • (E) Incorreta: Deadlocks exigem que os processos estejam segurando recursos e esperando por outros. A condição "grabbing no resources" (não pegando recursos) contradiz diretamente uma das condições fundamentais para a ocorrência de deadlock (Hold and Wait - segurar e esperar).

Fonte: FCC TRE-PR 2017 Analista Judiciário - Área Apoio Especializado - Especialidade Análise de Sistemas (Caderno Tipo 1). Reproduzida para fins de estudo.

Continue estudando

Estudar é izi

Pratique milhares de questões como esta, de graça, com explicação e gamificação no Quizinho.

Estudar de graça no Quizinho