algoritimo de baqueiro

351 palavras 2 páginas
Algoritmo do Banqueiro

Introdução Algoritmo do Banqueiro - Criado por Dijkstra em 1965, é um algoritmo dealocação de recursos e que pode evitar a ocorrência de Deadlock.(situação emque um processo aguarda por um recurso que nunca estará disponível ou umevento que não ocorrerá). Seu nome foi originado a partir de seufuncionamento, o qual pode ser comparado ao comportamento de umbanqueiro fornecendo créditos a um determinado número de clientes. Algoritmo do Banqueiro (implementada com a presença das quatrocondições) também possui várias limitações. A maior delas é a necessidade deum número fixo de processos ativos e de recursos disponíveis no sistema.Essa limitação impede que a solução seja implementada na prática, pois émuito difícil prever o número de usuários no sistema e o número de recursosdisponíveis, para que ocorra a situação de Deadlock.
Condições para ocorrência

Espera circular: um processo pode ter de esperar por um recurso alocado aoutro processo e vice-versa.

Espera por recurso: um processo, além dos recursos já alocados, podeestar esperando por outros recursos.

Exclusão mútua: cada recurso só pode estar alocado a um único processoem um determinado instante.

Não-preempção: um recurso não pode ser liberado de um processo sóporque outros processos desejam o mesmorecurso.Para prevenir a ocorrência de Deadlocks, é preciso garantir que uma dasquatro condições apresentadas, necessárias para sua existência, nuncaaconteça. A prevenção de Deadlocksevitando-se a ocorrência de qualquer umadas quatro condições é bastante limitada e, por isso, na prática não é utilizada. A maior delas é a necessidade de um número fixo de processos ativos ede recursos disponíveis no sistema. Todas estas condições devem estar presentes para que ocorra um Deadlock. Se alguma delas falhar então nãoocorrera um Deadlock.
Modelagem
Em geral quatro estratégias são utilizadas para tratar Deadlocks:

Ignorar completamente o problema. Se o ignorarmos talvez ele nos

Relacionados