Pular para o conteúdo principal

Questão de Sistemas Operacionais — Deadlock — INSTITUTO AOCP 2024

Sistemas OperacionaisDeadlock
Código
qg263639
Banca
INSTITUTO AOCP
Órgão
UFTM
Ano
2024
Nível
Médio
Cargo
Técnico em Tecnologia da Informação - Todas as Áreas
Em sistemas operacionais, a alocação inadequada de recursos pode levar a uma situação conhecida como deadlock. Qual das seguintes alternativas descreve corretamente um deadlock?
  1. ADeadlock ocorre quando um programa consome todos os recursos de CPU, deixando pouco para outros processos.
  2. BDeadlock é uma situação em que dois ou mais processos estão esperando indefinidamente por recursos liberados por outros processos.
  3. CDeadlock acontece quando há uma falha de hardware que impede o acesso aos recursos do sistema.
  4. DDeadlock é um estado em que o sistema operacional aloca recursos em excesso, causando a interrupção do funcionamento do sistema.
Revelar gabarito e comentário

GabaritoB — Deadlock é uma situação em que dois ou mais processos estão esperando indefinidamente por recursos liberados por outros processos.

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”.

Deadlock em Sistemas Operacionais

Gabarito: letra B. Deadlock é a situação em que dois ou mais processos ficam bloqueados indefinidamente, cada um aguardando a liberação de um recurso que está retido por outro processo do conjunto, formando uma espera circular que impede qualquer um de prosseguir. Essa é a definição clássica adotada pela literatura de sistemas operacionais (Tanenbaum, Silberschatz, entre outros).

O deadlock é um dos problemas mais estudados em sistemas concorrentes, pois é inerente à natureza de sistemas operacionais e bancos de dados. Para que ele ocorra, quatro condições precisam ser satisfeitas simultaneamente: exclusão mútua (cada recurso só pode ser usado por um processo por vez), posse e espera (um processo detém um recurso enquanto aguarda outro), não-preempção (recursos não podem ser retirados à força de um processo) e espera circular (existe um ciclo de processos, onde cada um espera por um recurso detido pelo próximo). A ausência de qualquer uma dessas condições impede o deadlock.

Na prática, imagine dois processos A e B. O processo A detém o recurso R1 e precisa de R2; o processo B detém R2 e precisa de R1. Nenhum dos dois libera o recurso que já possui, e ambos ficam esperando indefinidamente pelo recurso do outro. Esse é o cenário típico de deadlock, que pode ocorrer com recursos de hardware (impressoras, unidades de fita) ou de software (registros de banco de dados, locks de memória).

A banca explora aqui a confusão entre deadlock e outros problemas de concorrência, como starvation (um processo nunca recebe o recurso, mas os demais progridem) e condição de corrida (acesso concorrente a dados sem sincronização). O deadlock é caracterizado pela espera circular e indefinida, não pela falta de recursos ou por falhas de hardware.

Guarde o critério decisivo: deadlock envolve processos esperando uns pelos outros em um ciclo, não apenas um processo consumindo recursos ou uma falha do sistema. É exatamente essa distinção que separa a alternativa correta das demais.

1Definição
Espera circular e indefinida
Processos aguardam recursos retidos por outros
24 condições (todas necessárias)
Exclusão mútua
Posse e espera
Não-preempção
Espera circular
3Confusões comuns
Starvation (processo nunca recebe recurso)
Condição de corrida (acesso sem sincronização)
Monopolização de CPU
Falha de hardware
Deadlock
LEVELsoulevel.com.br
Deadlock: Definição (Espera circular e indefinida, Processos aguardam recursos retidos por outros); 4 condições (todas necessárias) (Exclusão mútua, Posse e espera, Não-preempção, Espera circular); Confusões comuns (Starvation (processo nunca recebe recurso), Condição de corrida (acesso sem sincronização), Monopolização de CPU, Falha de hardware)

Alternativa A — ❌ Incorreta

Descreve um cenário de monopolização de CPU por um processo, o que pode causar lentidão ou até starvation de outros processos, mas não é deadlock. No deadlock, os processos estão bloqueados esperando recursos, não consumindo CPU. Além disso, a CPU é um recurso preemptível, gerenciado pelo escalonador, e não costuma ser o foco de deadlocks.

Alternativa B — ✅ Correta ⟵ GABARITO

Esta é a definição precisa de deadlock: dois ou mais processos em espera indefinida por recursos que estão retidos por outros processos do mesmo conjunto, formando um ciclo de dependência. É exatamente o que ocorre no exemplo clássico dos dois processos que detêm recursos distintos e precisam do recurso um do outro.

Alternativa C — ❌ Incorreta

Falha de hardware pode causar indisponibilidade de recursos, mas não é deadlock. O deadlock é um problema de concorrência entre processos, não uma falha física do sistema. Uma falha de hardware interrompe o funcionamento, mas não gera a espera circular característica do deadlock.

Alternativa D — ❌ Incorreta

Alocação excessiva de recursos pode causar instabilidade ou queda do sistema, mas não é deadlock. O deadlock não depende da quantidade de recursos disponíveis — pode ocorrer mesmo com recursos abundantes, desde que as quatro condições sejam satisfeitas. A definição correta envolve a espera circular, não o excesso de alocação.

NÃO CAIA NESSA!

A banca troca o conceito de deadlock por outros problemas de sistema: a alternativa A confunde com starvation ou monopolização de CPU, a C com falha de hardware e a D com sobrecarga de recursos. O candidato que não domina a definição exata acaba marcando uma dessas. Lembre-se: deadlock é sempre espera circular e indefinida entre processos.

PEGA ESSA DICA!

Para identificar deadlock em questões, procure pela palavra "esperando" ou "aguardando" associada a "recursos liberados por outros processos". Se a alternativa mencionar ciclo, espera mútua ou bloqueio permanente, é deadlock. Se falar em falta de recursos, falha ou excesso, é outro problema.

Gabarito: letra B

Link permanente: /questoes/qg263639