Sistemas operacionais compartilham recursos, havendo a poss...

Próximas questões
Com base no mesmo assunto
Q690218 Sistemas Operacionais
Sistemas operacionais compartilham recursos, havendo a possibilidade de deadlocks. A literatura especializada indica quatro condições necessárias para que um deadlock ocorra. O algoritmo de Avestruz utiliza uma estratégia para lidar com deadlocks conhecida como
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Alternativa correta: D - ignorar.

No contexto de Sistemas Operacionais, deadlock é um impasse que pode ocorrer em situações onde processos estão competindo pelo mesmo conjunto de recursos. As quatro condições necessárias e suficientes para que ocorra um deadlock são: Mutual Exclusion (Exclusão Mútua), Hold and Wait (Segurar e Esperar), No Preemption (Não Preempção) e Circular Wait (Espera Circular). Cada uma dessas condições deve ser atendida para que um deadlock aconteça.

Existem diferentes estratégias para lidar com deadlocks, que são:

  • Detectar: O sistema operacional deve monitorar o estado do sistema para detectar a ocorrência de deadlock.
  • Detectar e recuperar: Após a detecção, o sistema toma ações para recuperar o sistema do deadlock, como abortar um ou mais processos ou requisitar a liberação de recursos.
  • Evitar: O sistema operacional faz uso de um algoritmo para assegurar que o sistema nunca entre em um estado de deadlock.
  • Prevenir: O sistema é projetado de tal maneira que pelo menos uma das quatro condições necessárias para deadlock nunca seja atendida.
  • Ignorar: Esta estratégia, que é utilizada no algoritmo de Avestruz, basicamente faz com que o sistema operacional faça de conta que deadlocks nunca ocorrem e, portanto, não toma nenhuma ação preventiva, de detecção ou de recuperação.

A estratégia de ignorar deadlocks, representada pela alternativa D, está correta porque é a abordagem mais simples e de menor custo. É uma estratégia utilizada em sistemas onde os deadlocks são considerados muito raros ou onde os custos para prevenir ou tratar deadlocks são muito altos em comparação com o custo de reiniciar o sistema após um deadlock. Por essa razão, algumas vezes é referido humoristicamente como "algoritmo de avestruz" porque, assim como o mito de que as avestruzes escondem a cabeça na areia para ignorar o perigo, o sistema "esconde a cabeça na areia" e finge que deadlocks não existem.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

O algoritmo de Avestruz é o famoso "afunda a cabeça na terra e finge que nada aconteceu".

Por isso letra D. Esse cara simplesmente ignora o erro.

Relembrando que o algoritmo mais sofisticado e mais caro tbém se chama "Algoritmo do Banqueiro".

Há três técnicas para o tratamento do Deadlock:

 

Algoritmo do Avestruz: Ignora o problema;

Algoritmo de Detecção e recuperação;

Algoritmo do Banqueiro: faz alocação cuidadosa dos recursos.

 

At.te,

Foco na missão

d-

In computer science, the ostrich algorithm is a strategy of ignoring potential problems on the basis that they may be exceedingly rare. It is named for the ostrich effect which is defined as "to stick one's head in the sand and pretend there is no problem". It is used when it is more cost-effective to allow the problem to occur than to attempt its prevention.

https://en.wikipedia.org/wiki/Ostrich_algorithm

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo