O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.
Sistemas Operacionais         -Gerência de Processos                                 Ernesto Massa                        ...
Processos e Threads               Processos               Threads               Comunicação  interprocesso             ...
Condições de Corrida           Exemplo 1:            1                     3                              7              ...
Condições de Corrida           Exemplo 2:                           Processo                                             ...
Condições de Corrida           Região Crítica:                   Parte do código onde é feito acesso a recursos         ...
Regiões Críticas           Quatro condições são necessárias            para prover exclusão mútua:                     N...
Soluções de Software           Implementações de uso das regiões            críticas sem a espera ocupada:              ...
Soluções de Software           Chamadas sleep e wakeup:               Sleep:                       Coloca o processo ch...
Soluções de Software           Semáforos:                   Ferramenta de sincronização criada por                    Di...
Problema Produtor Consumidor        SemáforosPearson Education                                          10                ...
Monitores           Exemplo de um            monitorPearson Education                                              11    ...
Problemas Clássicos de        Comunicação entre Processos           Problemas que ilustram situações reais de            ...
Jantar dos Filósofos           Filósofos            comem/pensam           Cada um precisa de 2            garfos para c...
Jantar dos Filósofos           Uma solução errada para o            problema do jantar dos filósofosPearson Education    ...
O Barbeiro SonolentoPearson Education                                          16                        Sistemas Operacio...
Barbeiro SonolentoPearson Education                                           17                         Sistemas Operacio...
Leitores e EscritoresPearson Education                                             18                           Sistemas O...
Próximos SlideShares
Carregando em…5
×

2009 1 - sistemas operacionais - aula 5 - semaforos e problemas classicos

4.019 visualizações

Publicada em

  • Seja o primeiro a comentar

2009 1 - sistemas operacionais - aula 5 - semaforos e problemas classicos

  1. 1. Sistemas Operacionais -Gerência de Processos Ernesto Massa (slides fornecidos pela Prentice Hall e adaptados para esta disciplina) 1Pearson Education Sistemas Operacionais Modernos – 2ª Edição
  2. 2. Processos e Threads  Processos  Threads  Comunicação interprocesso  Problemas clássicos de IPC  EscalonamentoPearson Education 2 Sistemas Operacionais Modernos – 2ª Edição
  3. 3. Condições de Corrida  Exemplo 1: 1 3 7 7 Processo Processo A 2 7 B 4 7+1 7-1 6 5 8 6  Resultado Final: Contador = 8 (ERRO!)Pearson Education 3 Sistemas Operacionais Modernos – 2ª Edição
  4. 4. Condições de Corrida  Exemplo 2: Processo 2 suspenso A 8 recebe CPU 10 Y 1 9 5 6 7 8 próxima 4 entrada 3 7 6 4 5 X 7 8 Processo 3 recebe CPU  Valor armazenado pelo B 7 suspenso processo B é perdido.Pearson Education 4 Sistemas Operacionais Modernos – 2ª Edição
  5. 5. Condições de Corrida  Região Crítica:  Parte do código onde é feito acesso a recursos compartilhados, e que podem levar a condições de corrida.  Ex: Processo A.  Código normal  Início da Seção Crítica (Protocolo de Entrada)  Seção Crítica  Término da Seção Crítica (Protocolo de Saída)  Código normalPearson Education 5 Sistemas Operacionais Modernos – 2ª Edição
  6. 6. Regiões Críticas  Quatro condições são necessárias para prover exclusão mútua:  Nunca dois processos simultaneamente em uma região crítica  Nenhuma afirmação pode ser feita sobre velocidades ou números de CPUs  Nenhum processo executando fora de sua região crítica pode bloquear outros processos  Nenhum processo deve esperar eternamente para entrar em sua região críticaPearson Education 6 Sistemas Operacionais Modernos – 2ª Edição
  7. 7. Soluções de Software  Implementações de uso das regiões críticas sem a espera ocupada:  Semáforos (Counting Semaphores);  Semáforos Binários  Mutex (Mutual Exclusion Semaphores);  Monitores.Pearson Education 7 Sistemas Operacionais Modernos – 2ª Edição
  8. 8. Soluções de Software  Chamadas sleep e wakeup:  Sleep:  Coloca o processo chamador no estado de espera.  Wakeup:  Coloca um outro processo que está em espera no estado de pronto.Pearson Education 8 Sistemas Operacionais Modernos – 2ª Edição
  9. 9. Soluções de Software  Semáforos:  Ferramenta de sincronização criada por Dijkstra (1965);  Características:  Variável inteira;  Não negativa.  Manipulados exclusivamente por duas operações atômicas:  DOWN (generalização do sleep)  UP (generalização do wakeup)  Implementados como chamada ao sistema.Pearson Education 9 Sistemas Operacionais Modernos – 2ª Edição
  10. 10. Problema Produtor Consumidor SemáforosPearson Education 10 Sistemas Operacionais Modernos – 2ª Edição
  11. 11. Monitores  Exemplo de um monitorPearson Education 11 Sistemas Operacionais Modernos – 2ª Edição
  12. 12. Problemas Clássicos de Comunicação entre Processos  Problemas que ilustram situações reais de conflitos gerados pela concorrência entre processos.  O Jantar dos Filósofos (Filósofos Glutões)  O Barbeiro Sonolento  Leitores e EscritoresPearson Education 13 Sistemas Operacionais Modernos – 2ª Edição
  13. 13. Jantar dos Filósofos  Filósofos comem/pensam  Cada um precisa de 2 garfos para comer  Pega um garfo por vez  Como prevenir deadlockPearson Education 14 Sistemas Operacionais Modernos – 2ª Edição
  14. 14. Jantar dos Filósofos  Uma solução errada para o problema do jantar dos filósofosPearson Education 15 Sistemas Operacionais Modernos – 2ª Edição
  15. 15. O Barbeiro SonolentoPearson Education 16 Sistemas Operacionais Modernos – 2ª Edição
  16. 16. Barbeiro SonolentoPearson Education 17 Sistemas Operacionais Modernos – 2ª Edição
  17. 17. Leitores e EscritoresPearson Education 18 Sistemas Operacionais Modernos – 2ª Edição

×