Please enable JavaScript.
Coggle requires JavaScript to display documents.
Deadlocks, Lucas Codeco Mapa Mental 7 SO 2023/1 - Coggle Diagram
Deadlocks
Tratamento de /deadlock
Nunca tenha deadlock
Garantir que pelo menos 1 das condições não seja verdadeira
Exclusão mútua
Utilizar apenas recursos não compartilhaveis
Manter e Esperar
Um processo que espera não mantem nenhum recurso
Não-Preempção
Se não puder adiquirir um recurso liberar todos os recursos ate que todos estejam disponiveis
Espera Circular
Ordena todos os tipos de recurso, e exige que cada processo solicite recursos em uma ordem
Permitir deadlock e se recuperar
Usado pela maioria (UNIX e Windows)
Drástico, porém é menos custoso se os deadlock forem considerados raros
Processo solicita um recurso e o sistema deve analisar se a alocação do recurso mantem um estado seguro
Necessidade de um algoritimo que determine se há deadlocks
Necessidade de um algoritimo para se recuperar do deadlock
Ignorar que existe deadlock
SO deve ser capaz de determinar se houve deadlock
O problema
impasse
Processo A bloqueado
esperando para adquirir um recurso Y
mantido por outro processo.B bloqueado
esperando para adquirir um recurso X
mantem um recurso X
Modelo do sistema
Conjunto finito de recursos
tipos de recursos
R1, R2, ... Rm
Ciclos de CPU, Memória, E/S..
Cada recurso tem 1 ou mais instancias
CPU de 2 núcleos = 2 instâncias.
Cada tipo de recurso Ri possui instâncias Wi
instâncias são idênticas
O processo utiliza o recurso da seguinte forma:
requisição/Solicitaão
Uso
Liberação
Condições necessárias de deadlock
Surge quando condições são atingidas simultaneamente
Não preempção
O recurso só pode ser liberado "Voluntariamente" pelo processo que o mantem
Exclusão mútua
Apenas um processo pode usar um recurso por vez
Espera circular
Um processo X mantem um recurso A e espera por um recurso B
Enquanto um processo Y Mantem um recurso B e espera um recurso A
Paradoxo
Manter e esperar
Um processo mantem um recurso enquanto espera para outro ser liberado e adquirido
Caracterização do Deadlock
Grafo contém ciclos?
Sim
Apenas uma instancia por tipo de recurso?
Sim
Deadlock
Não
Possibilidade de Deadlock
Não
Sem Deadlock
Lucas Codeco Mapa Mental 7 SO 2023/1