Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Prévia do material em texto

Nome: Marianne Lourenço Bravo 
Professor: Fabio Contarini Carneiro 
 
AVA2 – SISTEMAS OPERACIONAIS 
 
- linha 4 
proc_B: Ao tentar colocar a impressora o proc_B vai ficar travando ao processar enquanto aguarda a 
liberação do proc_C, equanto o proc_C também irá travar ao tentar alocar o scanner enquanto aguarda a 
liberação do proc_B. 
 
- linha 9 e 10 
As linhas serão liberadas automaticamente após o impasse. 
 
Em um determinado momento, o proc_B ficará aguardando a impressora do proc_C e o mesmo ficará 
aguardando a liberação do snanner (que está em a posse do proc_B), esse processo pode causar travamento 
no sistema. 
 
O problema pode ser resolvido de 2 formas: 
 
- Condição para posse e espera: o processo com esse recurso que foi concedido antes pode solicitar novos 
(no caso do proc_B e proc_C) 
 
- Condição de espera circular: Há uma lista de circulação entre dois ou mais processos e cada um deve 
esperar por cada processo de posse da seguinte cadeia. 
 
Outra maneira que o código pode ser escrito sem a possibilidade de apresentar erros ou falhas pode 
ser: 
 
Proc_A 
 processa_algo(); 
 aloca_plotter(); 
 processa_algo(); 
 libera_plotter(); 
 
Proc_B 
 processa_algo(); 
 aloca_scanner(); 
 processa_algo(); 
 aloca_plotter(); 
 libera_scanner(); 
 libera_plotter(); 
 processa_algo(); 
 aloca_impressora(); 
 processa_algo(); 
 libera_impressora(); 
 
Proc_ C 
 processa_algo(); 
 aloca_impressora(); 
 processa_algo(); 
 libera_impressora(); 
 processa_algo(); 
 aloca_scanner(); 
 processa_algo(); 
 libera_scanner();

Mais conteúdos dessa disciplina