Sincronização de processos - parte 1

1247 palavras 5 páginas
FACULDADE CAMPO GRANDE

Sincronização de Processos (parte1)
Disciplina: Sistemas Operacionais
Prof.° M.Sc. Sidney Roberto de Sousa

Conteúdo
   

Definição O problema da seção crítica Solução de Peterson Sincronização de hardware

Ciência da Computação - FCG

2

DEFINIÇÃO

Ciência da Computação - FCG

3

Problema produtor X consumidor


Processos independentes não afetam e não são afetados por outros processos Processos cooperantes afetam e são afetados por outros processos Problema produtor X consumidor: um processo produtos dados que devem ser consumidos por outros processos Possível solução: buffer (de tamanho limitado) para compartilhamento de memória







Ciência da Computação - FCG

4

Produtor while(TRUE) { //produz um ítem em proximoProduzido while(cont == TAMANHO_BUFFER) ;//faz nada buffer[in] = proximoProduzido; in = (in + 1) % TAMANHO_BUFFER; cont++; }

Ciência da Computação - FCG

5

Consumidor while(TRUE) { while(cont == 0) ;//faz nada proximoConsumido = buffer[out]; out = (out + 1) % TAMANHO_BUFFER; cont--; }

Ciência da Computação - FCG

6

Problema


Apesar das rotinas de produção e consumo serem separadas, elas podem não funcionar corretamente quando executadas concorrentemente Ex.: cont = 5 Se o produtor e o consumidor executarem concorrentemente, o valor de cont pode ser 4, 5 ou 6, porém o valor correto é 5! Tal situação de concorrência é chamada de condição de corrida Necessidade de sincronização de processos e coordenação
Ciência da Computação - FCG 7









O PROBLEMA DA SEÇÃO CRÍTICA

Ciência da Computação - FCG

8

Definição


Considere um sistema que consiste de n processos {P0, P1, P2, P3,..., Pn-1} Cada processo tem um segmento de código, chamado seção crítica, no qual o processo altera variáveis globais, atualiza tabelas, grava em arquivos, etc. Quando um processo está executando sua seção crítica, nenhum outro processo deve executar sua

Relacionados

  • Aula_07 Sincronização E Comunicação Entre Processos
    8036 palavras | 33 páginas
  • Analise e desenvolvimento de sistemas
    685 palavras | 3 páginas
  • Sistemas ditribuidos
    2487 palavras | 10 páginas
  • Sincronização de dados na cadeia de suprimentos utilizando a rede global de sincronização de dados
    9267 palavras | 38 páginas
  • gregr
    2696 palavras | 11 páginas
  • Tecnologia
    539 palavras | 3 páginas
  • Análise comparativa - semáforos e monitores
    928 palavras | 4 páginas
  • Sistemas operacionais
    9381 palavras | 38 páginas
  • nllfghhjkjkj
    8909 palavras | 36 páginas
  • Aula07 Sincronizacao ComunicacaoEntreProcessos_parte02
    2607 palavras | 11 páginas