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:
- Exclusão mútua — um recurso pode ser tomado por apenas um processo de cada vez.
- Retenção e espera — um processo mantém um recurso e espera por outro.
- Impossibilidade de liberação forçada — um processo não pode ser forçado a liberar um recurso.
- 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.