Sistemas Operacionais - Aula 08 (Sincronização e Comunicação entre Processos)

1,465 views 36 slides Jun 05, 2017
Slide 1
Slide 1 of 36
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27
Slide 28
28
Slide 29
29
Slide 30
30
Slide 31
31
Slide 32
32
Slide 33
33
Slide 34
34
Slide 35
35
Slide 36
36

About This Presentation

Slides da aula de Sistemas Operacionais


Slide Content

# Sistemas Operacionais #
Aula 08 –Sincronização e Comunicação
entre Processos
Prof. Leinylson FontinelePereira

Sistemas Operacionais -Aula 02: Conceitos Básicos
Na aula anterior...
ThreadeProcessos
18:48

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
5
Aplicações Concorrentes

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
Escalonamento Multilista
7

Sistemas Operacionais -Aula 02: Conceitos Básicos
Listas com Quantum Variável
8

Sistemas Operacionais -Aula 02: Conceitos Básicos
Windowns
9

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
14
Especificação de Concorrência
Comandos Forke Join

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
Nesta aula aprendemos...
SincronizaçãoeComunicaçaoentreProcessos
ProdutorvsConsumidor
24

Sistemas Operacionais -Aula 02: Conceitos Básicos
Emumaaplicaçãoconcorrentequecontrolasaldobancárioemcontascorrentes,doisprocessos
compartilhamumaregiãodememóriaondeestãoarmazenadosossaldosdosclientesAeB.Os
processosexecutam,concorrentementeosseguintespassos:
26

Sistemas Operacionais -Aula 02: Conceitos Básicos
Thread
27

Sistemas Operacionais -Aula 02: Conceitos Básicos
Thread
28

Sistemas Operacionais -Aula 02: Conceitos Básicos
Thread
29

Sistemas Operacionais -Aula 02: Conceitos Básicos
Thread
30

Sistemas Operacionais -Aula 02: Conceitos Básicos
Thread
31

Sistemas Operacionais -Aula 02: Conceitos Básicos
Thread
32

Sistemas Operacionais -Aula 02: Conceitos Básicos
Thread
33

Sistemas Operacionais -Aula 02: Conceitos Básicos
Thread
34

Sistemas Operacionais -Aula 02: Conceitos Básicos
Thread
35

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

Sistemas Operacionais -Aula 02: Conceitos Básicos
Alguma Dúvida?
37
[email protected]