Seção crítica e - exclusão mútua

536 palavras 3 páginas
Seção Crítica e - Exclusão mútua Seção crítica

* Definição do problema

● n (n > 1) processos podendo acessar concorrentemente um trecho de código comum
● trecho de código: denominado seção crítica
● instruções do código acessam variáveis compartilhadas
Exclusão mútua

● Somente um (1) processo na seção crítica
● se nenhum processo está na seção crítica, um outro poderá entrar
● Há soluções simples que exigem alternância entre os processos no uso da SC

Soluções para exclusão mútua

● A exclusão mútua pode ser implementada através de mecanismos de HW e SW

Soluções de HW (Desabilitarão de interrupções)

Faz com que o processo desabilite todas as interrupções antes de entrar em sua região crítica, reabilitando-as após deixar a região crítica.

BEGIN
.
Desabilita_Interrupcoes;
Regiao_Critica;
Habilita_Interrupcoes;
.
END.

Vantagem

● Solução mais simples
● Útil para executar (sem interrupções) chamadas do kernel do SO

Desvantagem

● A multiprogramação pode ficar seriamente comprometida, já que a concorrência entre processos tem como base o uso de interrupções.
● Ineficiente para sistemas multiprocessados. Pois um processador irá perder tempo sinalizando desabilitação e habilitação para os demais.
● O clock do computador usa interrupções, devendo esta solução ser usada com muito cuidado.

Soluções de HW (Instruções test-and-set - TAS) ● Instrução de máquina que permite testar e modificar o conteúdo de uma variável de forma atômica (sem interrupção)
● A atomicidade da transação garante que dois processos nãoirão manipular um recurso compartilhado ao mesmo tempo
● A instrução TAS possui o seguinte formato: Test-and-Set (X,Y);
● Ao executar TAS o valor lógico de Y é copiado para X, sendo atribuído a Y o valor verdadeiro
● Para coordenar o acesso concorrente a um recurso, a instrução TAS utiliza uma variável global (ex: bloqueio) inicializada com o valor falso
● Quando bloqueio = falso, qualquer

Relacionados

  • Sistemas operacionais
    718 palavras | 3 páginas
  • Slides Coordenacao Tarefas
    4006 palavras | 17 páginas
  • PROGRAMAÇÃO PARALELA
    1812 palavras | 8 páginas
  • algoritmo de peterson
    535 palavras | 3 páginas
  • AulaVI SO GERENCPROC 2011 1
    2947 palavras | 12 páginas
  • Sem titulo
    866 palavras | 4 páginas
  • Aula07 Sincronizacao ComunicacaoEntreProcessos_parte02
    2607 palavras | 11 páginas
  • Inibição de interrupções
    2039 palavras | 9 páginas
  • Slides SO
    1313 palavras | 6 páginas
  • SDI Ativ10 Ava Pesquisa sobre Algoritmos Distribuidos
    2365 palavras | 10 páginas