SISTEMAS OPERACIONAIS

2390 palavras 10 páginas
Concorrência

Sincronização de Processos (2)
Aula 11
Profa. Patrícia Dockhorn Costa

Dificuldades:

Compartilhamento de recursos globais.
Gerência de alocação de recursos.
Localização de erros de programação (depuração de programas). Ação necessária:

Proteger os dados compartilhados (variáveis, arquivos e outros recursos globais).
Promover o acesso ordenado (controle de acesso) aos recursos compartilhados ⇒ sincronização de processos.

Profa. Patrícia D. Costa LPRM/DI/UFES

Condições de Corrida

Sistemas Operacionais 2008/1

5a. Tentativa

são situações onde dois ou mais processos acessam dados compartilhados e o resultado final depende da ordem em que os processos são executados (o que, em última instância, é ditado pelo mecanismo de escalonamento do S.O.).
Torna a depuração difícil.
Condições de corrida são evitadas através da introdução de mecanismos de exclusão mútua. A exclusão mútua garante que somente um processo estará usando os dados compartilhados num dado momento.
A parte do programa (trecho de código) que em que os dados compartilhados são acessados é denominada de região (ou seção) crítica.
Condições de corrida

Profa. Patrícia D. Costa LPRM/DI/UFES

2

3

Sistemas Operacionais 2008/1

Na tentativa anterior o processo assinalava a sua intenção de entrar na R.C. sem saber da intenção do outro, não havendo oportunidade dele mudar de idéia depois (i.e., mudar o seu estado para “false”).
A 5a. tentativa corrige este problema:

Após testar no loop, verifica se o outro processo também quer entrar na sua R.C. Em caso afirmativo, o processo com a posse da UCP declina da sua intenção, dando a vez ao parceiro.

Profa. Patrícia D. Costa LPRM/DI/UFES

4

Sistemas Operacionais 2008/1

5a. Tentativa (cont.)
/* Process 0*/:
...
flag[0] = true; while (flag[1])
{
flag[0]= false;
/*delay*/
flag[0] = true;
}
< critical section > flag[0] = false;
...

Profa. Patrícia D. Costa LPRM/DI/UFES

Relacionados

  • Sistema operacional
    1575 palavras | 7 páginas
  • Sistemas operacionais
    2051 palavras | 9 páginas
  • sistema operacional
    1400 palavras | 6 páginas
  • Sistemas Operacionais
    1580 palavras | 7 páginas
  • Sistemas operacionais
    965 palavras | 4 páginas
  • sistemas operacionais
    2546 palavras | 11 páginas
  • O que é um sistema operacional
    4623 palavras | 19 páginas
  • Sistema Operacional
    5806 palavras | 24 páginas
  • Sistemas Operacionais
    1771 palavras | 8 páginas
  • Sistemas Operacionais
    897 palavras | 4 páginas