Sistemas Operacionais Prof. Galvez. PROBLEMA DE SEÇÃO CRITICA.
Transcript of Sistemas Operacionais Prof. Galvez. PROBLEMA DE SEÇÃO CRITICA.
![Page 1: Sistemas Operacionais Prof. Galvez. PROBLEMA DE SEÇÃO CRITICA.](https://reader034.fdocument.pub/reader034/viewer/2022042623/552fc15f497959413d8e64c4/html5/thumbnails/1.jpg)
Sistemas Operacionais
Prof. Galvez
![Page 2: Sistemas Operacionais Prof. Galvez. PROBLEMA DE SEÇÃO CRITICA.](https://reader034.fdocument.pub/reader034/viewer/2022042623/552fc15f497959413d8e64c4/html5/thumbnails/2.jpg)
PROBLEMA DE SEÇÃO CRITICA
![Page 3: Sistemas Operacionais Prof. Galvez. PROBLEMA DE SEÇÃO CRITICA.](https://reader034.fdocument.pub/reader034/viewer/2022042623/552fc15f497959413d8e64c4/html5/thumbnails/3.jpg)
PROBLEMA DE SEÇÃO CRITICA
![Page 4: Sistemas Operacionais Prof. Galvez. PROBLEMA DE SEÇÃO CRITICA.](https://reader034.fdocument.pub/reader034/viewer/2022042623/552fc15f497959413d8e64c4/html5/thumbnails/4.jpg)
PROBLEMA DE SEÇÃO CRITICA
![Page 5: Sistemas Operacionais Prof. Galvez. PROBLEMA DE SEÇÃO CRITICA.](https://reader034.fdocument.pub/reader034/viewer/2022042623/552fc15f497959413d8e64c4/html5/thumbnails/5.jpg)
PROBLEMA DE SEÇÃO CRITICA
![Page 6: Sistemas Operacionais Prof. Galvez. PROBLEMA DE SEÇÃO CRITICA.](https://reader034.fdocument.pub/reader034/viewer/2022042623/552fc15f497959413d8e64c4/html5/thumbnails/6.jpg)
PROBLEMA DE SEÇÃO CRITICA
![Page 7: Sistemas Operacionais Prof. Galvez. PROBLEMA DE SEÇÃO CRITICA.](https://reader034.fdocument.pub/reader034/viewer/2022042623/552fc15f497959413d8e64c4/html5/thumbnails/7.jpg)
PROBLEMA DE SEÇÃO CRITICA
SEÇÃO CRÍTICA: parte do código de um processo que acessa uma estrutura de dados compartilhada
O código do Escritor que insere nomes de arquivos na fila e o código do Leitor que retira esses nomes são SEÇÕES CRÍTICAS.
O problema da Seção Critica está em garantir que, quando um processo está executando sua seção crítica, nenhum outro processo entre na sua respectiva Seção crítica.
No exemplo, enquanto o processo Escritor estiver inserindo um nome na fila, o processo Leitor não poderá retirar nomes da fila, e vice-versa.
![Page 8: Sistemas Operacionais Prof. Galvez. PROBLEMA DE SEÇÃO CRITICA.](https://reader034.fdocument.pub/reader034/viewer/2022042623/552fc15f497959413d8e64c4/html5/thumbnails/8.jpg)
PROBLEMA DE SEÇÃO CRITICA
![Page 9: Sistemas Operacionais Prof. Galvez. PROBLEMA DE SEÇÃO CRITICA.](https://reader034.fdocument.pub/reader034/viewer/2022042623/552fc15f497959413d8e64c4/html5/thumbnails/9.jpg)
POSTERGAÇÃO x DEADLOCK
![Page 10: Sistemas Operacionais Prof. Galvez. PROBLEMA DE SEÇÃO CRITICA.](https://reader034.fdocument.pub/reader034/viewer/2022042623/552fc15f497959413d8e64c4/html5/thumbnails/10.jpg)
DEADLOCK
Os computadores possuem diversos recursos que só podem ser usados por
um processo de cada vez.
O fato de haver dois processos usando a impressora simultaneamente leva a
resultados indesejáveis.
Em sistemas multiprogramados, a questão do acesso aos recursos torna-se
um pouco mais complicada.
O processo A solicita e consegue permissão para usar a impressora. O
processo B requer e também consegue permissão para usar a unidade de fita. A
seguir, o processo A pede acesso à unidade de fita, mas a solicitação não vai
poder ser atendida até que o processo B libere esta unidade.
Infelizmente, em vez de liberar a unidade de fita, B solicita permissão para usar
a impressora.
Neste ponto, ambos os processos estão bloqueados, e assim permanecerão
para sempre.
Esta situação é conhecida como DEADLOCK.
![Page 11: Sistemas Operacionais Prof. Galvez. PROBLEMA DE SEÇÃO CRITICA.](https://reader034.fdocument.pub/reader034/viewer/2022042623/552fc15f497959413d8e64c4/html5/thumbnails/11.jpg)
OUTRAS SOLUÇÕES
SPIN-LOCK
SEMÁFOROS
MENSAGENS.
Send ( msg a ser enviada, destinatário da msg )
Receive ( endereço da variável do processo onde deverá ser colocada a msg lida )