Sistemas Operacionais -Aula 02: Conceitos Básicos
Mundo 8 -Sincronização e Comunicação entre Processos
3
Thread e Processos
Estrutura do Sistema Operacional
Sincronização e Comunicação entre Processos
Sistemas Operacionais -Aula 02: Conceitos Básicos
O que vamos aprender?
SincronizaçãoeComunicaçaoentreProcessos
ProdutorvsConsumidor
18:48
Sistemas Operacionais -Aula 02: Conceitos Básicos
6
A aplicação concorrente tem como base a execução cooperativa de
múltiplos processos ou threadsque trabalham em uma mesma tarefa na
busca de um resultado comum.
Sistemas Operacionais -Aula 02: Conceitos Básicos
10
Em uma aplicação concorrente, os recursos de do
sistema são compartilhados, como E/S, áreas de
memória, arquivos, etc.
Este compartilhamento muitas vezes cria situações indesejadas, por isto estes
processos tem que ter suas execuções sincronizadas. Estes recursos são oferecidos
pelos sistemas operacionais.
Sistemas Operacionais -Aula 02: Conceitos Básicos
11
Quando temos apenas um processador, o sistema operacional
alterna a execução dos processos segundo os critérios de
escalonamento pré-estabelecidos para ele.
Mesmo não havendo paralelismo real, ainda assim
conseguimos aumento de desempenho.
Sistemas Operacionais -Aula 02: Conceitos Básicos
Concurrency vs. Parallelism
12
Concurrent execution on single-core system:
Parallelism on a multi-core system:
Sistemas Operacionais -Aula 02: Conceitos Básicos
13
Comunicação entre processos
Trocas de mensagens e variáveis compartilhadas
Sistemas Operacionais -Aula 02: Conceitos Básicos
15
Especificação de Concorrência
Sistemas Operacionais -Aula 02: Conceitos Básicos
16
Problemas de Compartilhamento de Recursos
Problema da conta corrente
Sistemas Operacionais -Aula 02: Conceitos Básicos
Sincronização e Comunicação entre Processos
17
Sistemas Operacionais -Aula 02: Conceitos Básicos
Problema de Concorrência I
18
Sistemas Operacionais -Aula 02: Conceitos Básicos
Problema de Concorrência II
19
Sistemas Operacionais -Aula 02: Conceitos Básicos
20
Como Solucionar?
Sistemas Operacionais -Aula 02: Conceitos Básicos
21
Exclusão Mútua
A forma mais eficiente é impedir o acesso simultâneo.
Quando é assim, o acesso a área crítica é feito um
bloqueio para acesso exclusivo
Sistemas Operacionais -Aula 02: Conceitos Básicos
22
No starvation(espera indefinida), um processo nunca
consegue acesso ao recurso compartilhado. Quando um
acaba o SO escolhe quem vai acessar agora, e isto pode
fazer com que seu processo sempre perca pela
aleatoriedade ou por prioridade
Exclusão Mútua
Situações indesejadas
Sistemas Operacionais -Aula 02: Conceitos Básicos
Material: https://sites.google.com/site/leinylsonnassau
Aula adaptada do material de:
SistemasOperacionais,Anhaguera-Prof.CharlesFortes
ArquiteturadeSistemasOperacionais,MachadoeMaia
CursodeJava,LoianeGroner
23
Sistemas Operacionais -Aula 02: Conceitos Básicos
Na próxima aula veremos...
Gerência do Processador
Política de escalonamento de um sistema operacional
36