TrabalhosGratuitos.com - Trabalhos, Monografias, Artigos, Exames, Resumos de livros, Dissertações
Pesquisar

SISTEMAS OPERACIONAIS DEADLOCKS: CARACTERÍCAS E COMO OCORREM

Por:   •  18/6/2021  •  Trabalho acadêmico  •  3.149 Palavras (13 Páginas)  •  198 Visualizações

Página 1 de 13

UNIVERSIDADE ESTADUAL DE GOIÁS

BACHARELADO EM SISTEMAS DE INFORMAÇÃO

PAULO MANOEL DA SILVA JÚNIOR

PRISCYLLA THUANE MORAIS LASMAN

VANDERSON SOUZA DE ALMEIDA

SISTEMAS OPERACIONAIS-

DEADLOCKS: CARACTERÍCAS E COMO OCORREM

Ceres

2020

SUMÁRIO

Introdução ........................................................................................................................ 4

1. Deadlocks .......................................................................................................................5

    1.1   Modelo de Sistema ................................................................................................. 5

    1.2  Características do Deadlock .................................................................................... 5

    1.3  Grafos de Alocação de Recursos ............................................................................ 6

    1.4  Métodos Para Tratar os Deadlocks ......................................................................... 7

    1.5  Prevenção de Deadlocks ......................................................................................... 7

    1.6  Impedimento de Deadlocks ..................................................................................... 7

     

2. Detecção de Deadlock ................................................................................................. 8

    2.1 Recuperação de um Deadlock ................................................................................. 9

    2.2 Término de Processos ............................................................................................ .9

    2.3 Preempção de Recursos ........................................................................................ .9

   

3. Conclusão ................................................................................................................... 11

4. Referências ................................................................................................................. 12

RESUMO

    O deadlock acontece quando dois ou mais processos estão esperando por um evento que só pode ser causado por um processo que está em espera ou seja, não está disponível no momento. São utilizados 3 métodos para tratar esse problema:

   

  1- Usar um protocolo para garantir que o sistema nunca entre nesse estado;

  2- Permitir que o sistema entre em deadlock e depois se recupere automaticamente;

  3- Ignorar o problema.

    A terceira solução é a mais usada, porém necessita de maior atenção dos programadores ao desenvolver aplicações, pois será necessário criar algoritmos de detecção e recuperação de deadlocks.

   Um deadlock só acontece a partir de quatro condições:

 

 1- Exclusão mútua;

  2- posse e espera;

  3- não preempção;

  4- espera circular.

    Outro método seria obter informações prévias sobre como cada processo está utlizando recursos. Usando essas informações, é possível criar um algoritmo de impedimento de deadlocks.

    Se um sistema não obtiver nenhum protocolo para a não ocorrência de deadlocks, deverá ser empregado um sistema de detecção e recuperação. Se o deadlock for detectado, o sistema irá se recuperar terminando alguns processos, ou efetuar a preempção de recursos a partir de alguns processos em deadlock.

   

   

INTRODUÇÃO

       Quando vários processos competem por um determinado número de recursos, um processo irá solicitar um recurso e este não estará disponível no momento. Assim, o processo entra em estado de espera. Alguns processos podem não ser executados porque outros mantêm os recursos que foram solicitados.

      O trabalho explica basicamente como acontece o deadlock em nível de sistema operacional e em aplicações Java com multithreading. Também descreve métodos que podem ser utilizados para lidar com os problemas de deadlocks.

1. DEADLOCKS

1.1 MODELO DE SISTEMA

   

     

     Todo sistema é composto por um número finito de recursos que serão distribuídos entre processos concorrentes, tais recursos são divididos em vários tipos, podendo ter múltiplas instâncias iguais. O espaço na memória, os arquivos, ciclos de CPU, blocos de operações de objetos e dispositivos de l/O são exemplos de recursos.

     Se algum processo solicitar uma instância de determinado recurso, a alocação de qualquer instância do mesmo tipo atenderá a requisição. Se isso não acontecer é porque as instâncias não são iguais e as classes do tipo de recurso não foram definidas adequadamente.

     O processo precisa solicitar o recurso antes de usá-lo e liberá-lo após o uso, ele pode solicitar quantos recursos achar necessário, porém só poderá solicitar recursos que estão disponíveis do sistema, por exemplo, não poderá solicitar três impressoras se possuir apenas duas no sistema.

      Sequência de recursos que só poderão ser utilizadas no modo de operação normal:

 

   1- Pedido: Se o pedido não puder ser satisfeito imediatamente, o processo solicitante        deverá aguardar até que possa obter o recurso.

  2- Uso: O processo pode operar no recurso.

  3- Liberação: O processo libera o recurso.

     Exemplos de chamadas ao sistema incluem requeste rai ease device, openeclose file e ali ocateefree memory.

     Uma tabela do sistema registra se cada recurso está livre ou não, cada recurso que está sendo usado e em qual processo. Se for solicitado um recurso que está sendo usado no momento ele será acrescentado em uma fila de processos que estão esperando por este recurso.

...

Baixar como (para membros premium)  txt (21.1 Kb)   pdf (190.1 Kb)   docx (58.2 Kb)  
Continuar por mais 12 páginas »
Disponível apenas no TrabalhosGratuitos.com