Sobes.tech
Junior — Middle

Pode explicar o que é um deadlock em sistemas operacionais e como ele ocorre?

sobes.tech IA

Resposta da IA

Deadlock (interbloqueio) é uma situação no sistema operativo em que dois ou mais processos bloqueiam-se mutuamente, esperando liberar recursos que estão sendo utilizados pelo outro.

Acontece quando, simultaneamente, quatro condições são atendidas:

  1. Exclusão mútua — um recurso pode ser tomado por apenas um processo de cada vez.
  2. Retenção e espera — um processo mantém um recurso e espera por outro.
  3. Impossibilidade de liberação forçada — um processo não pode ser forçado a liberar um recurso.
  4. Espera circular — existe um ciclo de processos, cada um esperando por um recurso que está sendo utilizado pelo próximo no ciclo.

Exemplo: o processo A tomou o recurso 1 e espera pelo recurso 2, enquanto o processo B tomou o recurso 2 e espera pelo recurso 1 — ambos estão bloqueados indefinidamente.