Essays.club - TCC, Modelos de monografias, Trabalhos de universidades, Ensaios, Bibliografias
Pesquisar

Inibição de Interrupções

Por:   •  21/2/2018  •  895 Palavras (4 Páginas)  •  300 Visualizações

Página 1 de 4

...

Antes de entrar em sua região crítica, um processo chama

enter region, que faz uma espera ociosa até que ele esteja livre de trava; então ele verifica a variável LOCK e retorna.

Depois da região crítica, o processo chama leave region, que põe um 0 na variável LOCK. Assim como todas as soluções baseadas em regiões críticas, o processo "trapacear" a exclusão mútua falhará.

Vantagens

- Simplicidade de uso.

- Funciona em máquinas com vários processadores.

- Presente em quase todos os processadores atuais.

- Não dá aos processos de usuário o poder de desabilitar interrupções.

- Espera ocupada (busy wait).

- Possibilidade de postergação infinita (starvation), “processo azarado” sempre pega a variável LOCK com o valor 1.

Por software com busy wait

Variáveis de Bloqueio[

Quando uma váriavel "lock" estiver como 0, significa que a região crítica esta livre, e 1 esta ocupada. Assim, antes de entrar cada processo testa o valor da variável "lock", se for 0, coloca como 1 e entra na região crítica, após sair coloca o valor 0, se o valor já for 1, aguarda até ser 0.

Alternância Estrita

Neste metodo, é criada uma variável "turn", com valor inicial 0, a imagem abaixo mostra dois processos 'a' e 'b' utilizando este metodo.

[pic 1]

Como "turn" esta como 0, o processo 'a' não fica "preso" no while, e assim executa a região crítica, após terminar, ele seta "turn" para 1 e parte para o resto do código, caso ocorra um chaveamento e o processo 'b' tente executar a região crítica antes que o processo 'a' sete "turn" como 1, ele ficara em um loop, apenas testando a variavel "turn"(espera ativa).

Solução de Peterson

Antes do processo entrar na região crítica ele executa o procedimento enter_region(), com o seu número. E após sair da região crítica, executa leave_region()

...

Baixar como  txt (5.9 Kb)   pdf (48.9 Kb)   docx (14 Kb)  
Continuar por mais 3 páginas »
Disponível apenas no Essays.club