Resumo deadlocks

Disponível somente no TrabalhosFeitos
  • Páginas : 8 (1868 palavras )
  • Download(s) : 0
  • Publicado : 28 de setembro de 2012
Ler documento completo
Amostra do texto
Aula_01 - DEADLOCKS (IMPASSES)
Impasses ou deadloks,
vamos a um exemplo prático dos processos: vamos supor que haja dois processos e esses dois processos querem gravar em CD um documento obtido de um scanner. O processo X faz a solicitação para usar o scanner e tem a autorização. O processo Y, que é programado de uma maneira diferente, faz a solicitação de primeiro obter a permissão para usaro gravador de CD e também obtém essa autorização. Então o processo X pede para usar o gravador de CD, mas esta solicitação lhe é negada até que o processo Y o libere. No entanto, ao invés de liberar o gravador de CD, o processo Y pede para usar o scanner. Neste instante os dois processos ficam bloqueados e assim ficarão para sempre.
Um recurso é um item que pode ser utilizado por somente um únicoprocesso em um dado instante do tempo.
Ainda falando em recursos, temos dois tipos deles que são, os recursos:
* Preemptíveis, e os
* Não preemptíveis.
Os preemptíveis são recursos que podem ser interrompidos e retirados da área de uso sem ter qualquer perda ao sistema, ou seja sem causar impasses.
Um exemplo de recurso preemptivo é a memória, pois quando um processo é parado eenviado para o disco como, por exemplo, na situação de termos um sistema com 64mb de memória disponível para usuários, uma impressora e dois processos de 64mb que queiram imprimir algum documento. O processo X requisita e obtém a impressora e então passa a computar os dados para impressão. Antes que ele finalize o seu processo, a sua fatia de tempo de uso da CPU termina ele é retirado da memória, entãoentra em ação o processo Y que agora está em execução e tenta, mas não obtém nenhum êxito em obter para si o uso da impressora, pois ela já tinha sido requisitada pelo processo X. Estamos diante de uma típica situação de impasse: o processo X tem a impressora e o processo Y tem a memória, assim nenhum deles consegue prosseguir sem o recurso mantido pelo outro, mas como estamos falando de umrecurso preemptivo que é a memória, pode-se enviar o processo Y para o disco e depois carregar o processo X; com isso o processo X termina a sua execução, finaliza a impressão e logo libera a impressora, isso torna os recursos livres para o processo Y, não ocasionando nenhum impasse.

Já com os recursos não preemptiveis não há a possibilidade do processo ser interrompido e depois de um tempo continuara execução, pois caso isso ocorra pode ocasionar falhas, ou seja, impasses.
Um exemplo clássico quando isso pode ocorrer é quando estamos gravando um CD: se um processo começou a gravar um CD-ROM e, de repente, retirar dele o gravador de CD e dar a um outro processo, isso ocasionará uma falha e o resultado será um CD com erros. Resumindo: gravadores de CD são recursos que não podem ser tomadosa qualquer instante, pois são recursos não preemptiveis. De um forma geral os impasses envolvem recursos não preemptiveis, teoricamente temos uma sequência de eventos necessários ao uso de um determinado recurso. São eles.
1. Requisitar o recurso.
2. Usar o recurso.
3. Liberar o recurso.

Nos três passos relacionados anteriormente, são seguidos por operações como para a aquisição do recurso(down) depois vem a utilização do recurso e em seguida liberação do recurso (up), cada recurso pode ser associado a um semáforo. Veja os passos mostrados na tabela 1 a seguir.

Podemos dizer que impasses são situações em que um processo espera por um recurso que nunca estará disponível, ou seja, é um evento que nunca ocorrerá. Um processo em situação de impasse encontra-se á espera de um recursoque está sendo usado por um outro processo também em situação de impasse, um processo não pode continuar o seu trabalho e o outro processo não pode liberar qualquer recurso. Veja a figura 2 em que os processos se encontram em situação de impasse
-------------------------------------------------
Situações de impasses ocorrem, na maioria das vezes, por consequência do compartilhamento de recursos...
tracking img