Buscar

Sistemas Operacionais - Processos - III

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
1 – Introdução ao estudo de Sistemas 
Operacionais
Instituto Educacional Santo Agostinho – IESA
Faculdade de Ciências Exatas e Tecnológicas Santo Agostinho – FACET
Siste
m
as d
e
 In
fo
rm
ação
 -
FA
SA
Fev / 2016
Rafael Antonio Gonçalves Lima
Sumário
1.6. Concorrência
Siste
m
as d
e
 In
fo
rm
ação
 -
FA
SA
1.6. Concorrência
• Concorrência é a possibilidade de o processador
executar instruções ao mesmo tempo que outras
operações, como, por exemplo, operações de E/S.
• É o princípio básico para o projeto e implementação
dos sistemas multiprogramáveis.
Siste
m
as d
e
 In
fo
rm
ação
 -
FA
SA
1.6.1. Sistemas Monoprogramáveis x Multiprogramáveis
• Nos sistemas monoprogramáveis os recursos
computacionais eram utilizados de maneira pouco
eficiente.
• Somente um programa pode estar em execução por
vez.
• Ocorre então um desperdício na utilização do
processador.
• Por exemplo: enquanto uma leitura de disco é
realizada o processador permanece ocioso.
• O tempo de espera é relativamente longo, já que as
operações com dispositivos de E/S são muito lentas.
Siste
m
as d
e
 In
fo
rm
ação
 -
FA
SA
1.6.1. Sistemas Monoprogramáveis x Multiprogramáveis
Siste
m
as d
e
 In
fo
rm
ação
 -
FA
SA
1.6.1. Sistemas Monoprogramáveis x Multiprogramáveis
Siste
m
as d
e
 In
fo
rm
ação
 -
FA
SA
1.6.2. Interrupções e Exceções
• Durante a execução de um programa podem ocorrer
alguns eventos inesperados, ocasionando um desvio
forçado no seu fluxo de execução.
• Estes tipos de eventos são conhecidos por
interrupção ou exceção e podem ser consequência
da:
• sinalização de algum dispositivo de hardware externo ao
processador;
• ou da execução de instruções do próprio programa.
Siste
m
as d
e
 In
fo
rm
ação
 -
FA
SA
1.6.2. Interrupções e Exceções
• A interrupção é o mecanismo que tornou possível a
implementação da concorrência nos computadores,
sendo o fundamento básico dos sistemas
multiprogramáveis.
• É em função desse mecanismo que o sistema
operacional sincroniza a execução de todas as suas
rotinas e dos programas dos usuários, além de
controlar dispositivos.
Siste
m
as d
e
 In
fo
rm
ação
 -
FA
SA
1.6.2. Interrupções e Exceções
• Uma interrupção é sempre gerada por algum evento
externo ao programa e, nesse caso, independe da
instrução que está sendo executada.
• Exemplo: Quando um dispositivo avisa ao
processador que alguma operação de E/S está
completa. Nesse caso, o processador deve
interromper o programa para tratar o término da
operação.
Siste
m
as d
e
 In
fo
rm
ação
 -
FA
SA
1.6.. Interrupções e Exceções
• Uma exceção é semelhante a uma interrupção, sendo a principal
diferença o motivo pelo qual o evento é gerado.
• A exceção é resultado direto da instrução do próprio programa,
como a divisão de um número por zero ou a ocorrência de
overflow em uma operação aritmética.
• A exceção é gerada por um evento síncrono (resultado direto da
execução do programa corrente), enquanto a interrupção é
gerada por eventos assíncronos (não relacionados à instrução do
programa corrente).
• Da mesma forma que na interrupção, sempre que uma exceção é
gerada o programa em execução é interrompido e o controle é
desviado para uma rotina de tratamento de exceção, que pode
ser escrito pelo próprio programador, evitando que um programa
seja encerrado no caso de ocorrer uma exceção.
Siste
m
as d
e
 In
fo
rm
ação
 -
FA
SA
1.6.2. Interrupções e Exceções
Siste
m
as d
e
 In
fo
rm
ação
 -
FA
SA
1.6.2. Operações de Entrada/Saída
• Evolução
• Instruções de entrada/saída 
• Continham detalhes específicos de cada periférico e eram executadas
pelo próprio processador, tendo assim uma forte dependência entre o
processador e os dispositivos de E/S.
• Controlador ou interface
• O processador não se comunicava diretamente com os periféricos,
mas sim através do controlador.
• Problema de o sistema ficar permanentemente testando o estado do
periférico. Este controle era chamado de E/S controlada por
programa. Mantinha o processador ocupado até o término da
operação.
Siste
m
as d
e
 In
fo
rm
ação
 -
FA
SA
1.6.2. Operações de Entrada/Saída
• Controlador ou interface
• A evolução desse mecanismo permitiu que após o início da
transferência de dados, o processador permanecesse livre
para realizar outras tarefas. Assim, o SO testava cada
dispositivo em intervalos de tempo para saber o término
da operação de E/S (pooling).
• Esse tipo de operação introduziu certo grau de
paralelismo, visto que um programa poderia ser
processado enquanto outro esperava pelo término de uma
operação de E/S.
• Problema de existir um grande número de periféricos, o
processamento é interrompido frequentemente.
Siste
m
as d
e
 In
fo
rm
ação
 -
FA
SA
1.6.2. Operações de Entrada/Saída
• Controlador ou interface
• Com a implementação do mecanismo de interrupção, as
operações de E/S puderam ser realizadas de uma forma
mais eficiente.
• O próprio controlador interrompia o processador para
avisar do término da operação. Esse mecanismo foi
chamado de E/S controlado por interrupção.
Siste
m
as d
e
 In
fo
rm
ação
 -
FA
SA
1.6.2. Operações de Entrada/Saída
• Controlador ou interface
• Apesar disso, a transferência de grande volume de dados
exige muitas intervenções do processador, reduzindo sua
eficiência.
• A solução para esse problema foi a implementação de uma
técnica de transferência de dados denominada DMA
(Direct Memory Access)
Siste
m
as d
e
 In
fo
rm
ação
 -
FA
SA
1.6.2. Operações de Entrada/Saída
• Controlador ou interface
• Apesar disso, a transferência de grande volume de dados
exige muitas intervenções do processador, reduzindo sua
eficiência.
• A solução para esse problema foi a implementação de uma
técnica de transferência de dados denominada DMA
(Direct Memory Access)
Siste
m
as d
e
 In
fo
rm
ação
 -
FA
SA
1.6.2. Controlador
Siste
m
as d
e
 In
fo
rm
ação
 -
FA
SA
1.6.2. Operações de Entrada/Saída
• DMA (Direct Memory Access)
• Permite que um bloco de dados seja transferido entre a
memória principal e dispositivos de E/S sem a intervenção do
processador, exceto no início e no final da transferência.
• Canal de entrada e saída
• A extensão do conceito do DMA, possibilitou o surgimento 
do canal de entrada e saída.
• O canal é um processador com capacidade de executar
programas de E/S, permitindo o controle total sobre
operações de E/S.
Siste
m
as d
e
 In
fo
rm
ação
 -
FA
SA
1.6.2. Operações de Entrada/Saída
• Canal de entrada e saída
• As instruções de E/S são armazenadas na memória
principal pelo processador, porém o canal é responsável
pela sua execução.
• A evolução do canal permitiu que este possuísse sua
própria memória, eliminando a necessidade de os
programas de E/S serem carregados para a memória
principal.
• Este último estágio do canal é também denominado
processador de entrada e saída.
Siste
m
as d
e
 In
fo
rm
ação
 -
FA
SA
1.6.2. Canal de Entrada e Saída
Siste
m
as d
e
 In
fo
rm
ação
 -
FA
SA
1.6.3. Buffering
• Canal de entrada e saída
• A técnica de buffering consiste na utilização de uma área na
memória principal, denominada buffer, para a transferência de
dados entre os dispositivos de E/S e a memória.
• Permite que em uma operação de leitura o dado seja
transferido primeiramente para o buffer, liberando
imediatamente o dispositivode entrada para realizar uma nova
leitura.
• Essa técnica minimiza o problema da disparidade da
velocidade de processamento existente entre o processador e
os dispositivos de E/S.
Siste
m
as d
e
 In
fo
rm
ação
 -
FA
SA
1.6.3. Buffering
Siste
m
as d
e
 In
fo
rm
ação
 -
FA
SA
1.6.4. Spooling
• Spooling (simultaneous peripheral operation on-line)
• Como a velocidade de operação dos dispositivos de E/S é
muito menor que a do processador, era comum que a UCP
permanecesse ociosa à espera de programas e dados de
entrada ou pelo témino de uma impressão.
• Solução foi armazenar os vários programas e seus dados,
também chamados de jobs, em um fita magnética e, em
seguida, submetê-los a processamento (de forma sequencial).
• Essa técnica foi a base dos sistemas batch.
Siste
m
as d
e
 In
fo
rm
ação
 -
FA
SA
1.6.4. Spooling
• Atualmente essa técnica está presente na maioria dos sistemas
operacionais, sendo utilizada no gerenciamento de impressão.
• No momento em que um comando de impressão é executado,
as informações que serão impressas são gravadas antes em um
arquivo em disco, conhecido como arquivo de spool, liberando
imediatamente o programa para outras atividades.
Siste
m
as d
e
 In
fo
rm
ação
 -
FA
SA
1.6.4. Spooling
Siste
m
as d
e
 In
fo
rm
ação
 -
FA
SA
1.6.5. Reentrância
• Vários usuários utilizam os mesmos aplicativos
simultaneamente, como editores de textos e compiladores.
• Se cada usuário que utilizasse um desses aplicativos trouxesse
o código executável para a memória, haveria diversas cópias de
um mesmo programa na memória principal.
• Reentrância é a capacidade de um código executável (código
reentrante) ser compartilhado por diversos usuários, exigindo
que apenas uma cópia do programa esteja na memória.
• A reentrância permite que cada usuário possa estar em um
ponto diferente do código reentrante, manipulando dados
próprios.
Siste
m
as d
e
 In
fo
rm
ação
 -
FA
SA
1.6.5. Reentrância
Siste
m
as d
e
 In
fo
rm
ação
 -
FA
SA
Exercícios de Fixação
1. O que é concorrência?
2. Por que o mecanismo de interrupção é fundamental para a implementação da
multiprogramação?
3. Explique o mecanismo de funcionamento das interrupções.
4. O que são eventos síncronos e assíncronos? Como estes eventos estão relacionados
ao mecanismo de interrupção e exceção?
5. Dê exemplos de eventos associados ao mecanismo de exceção.
6. O que é DMA e qual a vantagem desta técnica?
7. Como a técnica de buffering permite aumentar a concorrência em um sistema
computacional?
8. Em um sistema multiprogramável, seus usuários utilizam o mesmo editor de textos
(200 Kb), compilador (300 Kb), software de correio eletrônico (200 Kb) e uma
aplicação corporativa (500 Kb). Caso o sistema não implemente reentrância, qual o
espaço de memória principal ocupado pelos programas quando 10 usuários
estiverem utilizando todas as aplicações simultaneamente? Qual o espaço liberado
quando o sistema implementa reentrância em todas as aplicações?
Siste
m
as d
e
 In
fo
rm
ação
 -
FA
SA
Bibliografia
1. MACHADO, Francis B. Arquitetura de Sistemas Operacionais. 4 ed.
Rio de Janeiro: LTC, 2007.
2. TANENBAUM, Andrew S. Sistemas operacionais modernos. 2 Ed.
Rio de Janeiro: Prentice-Hall, 2005.
Siste
m
as d
e
 In
fo
rm
ação
 -
FA
SA
Conteúdo da Próxima Aula
• Estrutura do Sistema Operacional.
Obrigado ! 
Rafael A. G. Lima (rafaelg@fasa.edu.br)
Siste
m
as d
e
 In
fo
rm
ação
 -
FA
SA

Outros materiais