quarta-feira, 22 de junho de 2011

Deadlocks

     Algumas vezes temos algumas situações onde os processos interagem entre si, mas por algum motivo o processo anterior esta suspenso, deste modo, o processo 2 entra no estado de suspensão, esperando o processo 1, se o processo 1 não sair do estado de suspensão, o processo 2 nunca ira terminar, entramos em Deadlocks. 
 
         Para exemplificar melhor, um caso tipo seria uns engarrafamentos de ônibus chegando a um cruzamento, se tivermos 4 ônibus chegando ao mesmo tempo no cruzamento e tivermos outros ônibus atrás destes 4, o transito pára. Ninguém vai pra frente ou para trás.
 
Exemplo 2 
 
               No computador podem acontecer situações assim,  Por exemplo, uma unidade de fita e um gravador de Cd,  imagine dois processos precisando gravar dados no cd-rom a partir de dados contidos nas fitas. Assim temos o processo 1 requisitando o CDROM e o processo 2 requisitando a unidade de fita, em seguida o processo 1 requisita a unidade de fita, mas fica suspenso  porque a fita esta alocada, já o processo 2 requisita o unidade de cdrom, mas a mesma esta suspensa pelo processo 1, ficando o processo 2 também suspenso. Entramos em DeadLock.
 

Nenhum comentário:

Postar um comentário