Buscar

Aula 03 - Concorrência Processos Threads - Slide

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 30 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 30 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 30 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Sistemas Operacionais
Aula 3
Conceito de Concorrência
Claudio de Oliveira
Organização da Aula
Conceito de Concorrência.
Sistemas Monoprogramáveis x 
Multiprogramáveis.
Técnica de Concorrência
Conceito de Processos
Conceito de Threads. FIM
Concorrência
•Sistemas Operacionais 
podem ser vistos como um 
conjunto de rotinas 
executadas de forma 
concorrente e ordenada. 
(Pinkert, 1990). 
Monoprogramável 
x
Multiprogramável 
2
(a) Sistema Monoprogramável
tempo tempo
E/ S E/ S
UCP UCPlivre 11
1
(b) Sistema Multiprogramável
Quais as principais técnicas que permitem a 
implementação da concorrência em sistemas 
multiprogramáveis?
Interrupções e Exceções
•Interrupção: é sempre gerada 
por algum evento externo ao 
programa, exemplo uma 
operação de E/S. 
•Exceção: é gerada por um 
evento síncrono direto do 
programa concorrente.
Controladores
Memória
Principal
UCP
Controlador
Dispositivos de E/ S
Canais de entrada e saída
Memória
Principal
UCP
Canal de E/ S
Controlador
Dispositivos de E/ S
Controlador
Dispositivos de E/ S
Buffering
Memória
Principal
UCP
Buffer
gravação gravação
leitura leitura
Controlador
Spooling
Programa ImpressoraArquivo
de Spool
Sistema OperacionalSistema Operacional
Reentrância
Memória Principal
código reentrante
área de dados do usuário A
usuário A usuário C
usuário B usuário D
área de dados do usuário B
área de dados do usuário C
área de dados do usuário D
Técnica de DMA
Acesso direto a 
memória: Técnica que 
permite a transferência 
de dados direto da 
memória para o 
dispositivo de saída 
sem passar pelo 
processador.
FIM
O que é um processo?
Conceito de processo?
Um processo pode ser 
entendido inicialmente 
como um programa 
em execução, só que 
seu conceito é mais 
abrangente. 
[MACHADO, 1997].
Características da Estrutura de um Processo Programa
Contexto de
Software
prioridade de
execução
registrador PC
data/ hora
de criação
tempo de
processador
registrador SP
quotas
privilégios
endereços de memória
principal alocados
registrador
de status
owner (UID)
PID
nome
registradores
gerais
Contexto de
Hardware
Espaço de
Endereçamento
Troca de contexto entre processo
Tipos de processos
Foreground x Background
(a) Processo Foreground
(b) Processo Background
saída
saída
arquivo
de saída
terminalterminal
entrada
entrada
arquivo
de entrada
Tipos de processos
CPU- Bound x I/O-Bound
(a) CPU-bound
tempo tempo
E/ S E/ S
UCP UCP
(b) I/ O-bound
Comunicação entre processos
[ctrl-C]
Processo
interrupção sinal
Sistema Operacional
Hardware
Sistema Operacional
Interrupções
Exceções
Sinais
Processo Processo
A gerência de processos no Windows.
Visualizando o 
gerenciador de 
processos no modo 
gráfico.
O que é uma thread?
Conceituando...
Processos: São 
programas em execução 
que contém um único 
fluxo de execução.
Processos possuem seu 
espaço de 
endereçamento de 
memória individual. 
Acumulam recursos 
como: arquivos abertos, 
processos filhos, etc.
O que é uma thread então?
É uma das maneiras 
utilizadas por um 
processo para dividir a si 
mesmo em duas ou mais 
tarefas que podem ser 
executadas 
simultaneamente, em 
geral, em arquiteturas 
multiprocessadas.
Vantagens para utilização de thread
São mais fáceis de criar e 
destruir que os processos.
Compartilham espaço 
físico de memória, disco, 
periféricos e outros 
recursos.
Apresentam melhor 
performance do que os 
processos.
Utilização de thread
O sistema operacional 
deverá ter suporte a 
thread.- API CreateThread 
do Windows;
A ferramenta de 
programação (linguagem) 
também deverá ter suporte 
para threads. (JAVA) 
Síntese
Concorrência
As técnicas de 
concorrência podem 
ser a nível de 
hardware ou de 
software e sempre tem 
a função de liberar o 
processador das 
tarefas de E/S.
Gerência de processos
Processo é uma parte 
do programa em 
execução.
Os processos de uma 
mesma aplicação 
concorrem entre si.
Cada processo possui 
seu contexto de 
hardware, software e 
endereço de memória.
Threads
Também chamadas de 
processos leves 
(lightweight process).
Principais vantagens em 
relação ao uso de 
processo é a performance 
e o compartilhamento de 
recursos.
Referências de Apoio
• TANENBAUM. Sistemas Operacionais Modernos. (biblioteca virtual)
• DEITEL. Sistemas operacionais. (biblioteca virtual)
• MACHADO. Arquitetura de Sistemas Operacionais

Outros materiais

Outros materiais