sistemas operacionais prof. galvez. problema de seÇÃo critica

11
Sistemas Operacionais Prof. Galvez

Upload: internet

Post on 21-Apr-2015

109 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Sistemas Operacionais Prof. Galvez. PROBLEMA DE SEÇÃO CRITICA

Sistemas Operacionais

Prof. Galvez

Page 2: Sistemas Operacionais Prof. Galvez. PROBLEMA DE SEÇÃO CRITICA

PROBLEMA DE SEÇÃO CRITICA

Page 3: Sistemas Operacionais Prof. Galvez. PROBLEMA DE SEÇÃO CRITICA

PROBLEMA DE SEÇÃO CRITICA

Page 4: Sistemas Operacionais Prof. Galvez. PROBLEMA DE SEÇÃO CRITICA

PROBLEMA DE SEÇÃO CRITICA

Page 5: Sistemas Operacionais Prof. Galvez. PROBLEMA DE SEÇÃO CRITICA

PROBLEMA DE SEÇÃO CRITICA

Page 6: Sistemas Operacionais Prof. Galvez. PROBLEMA DE SEÇÃO CRITICA

PROBLEMA DE SEÇÃO CRITICA

Page 7: Sistemas Operacionais Prof. Galvez. PROBLEMA DE SEÇÃO CRITICA

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

PROBLEMA DE SEÇÃO CRITICA

Page 9: Sistemas Operacionais Prof. Galvez. PROBLEMA DE SEÇÃO CRITICA

POSTERGAÇÃO x DEADLOCK

Page 10: Sistemas Operacionais Prof. Galvez. PROBLEMA DE SEÇÃO CRITICA

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

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 )