Carregar apresentação
A apresentação está carregando. Por favor, espere
1
Arquitetura de Sistemas Operacionais
Francis Berenger Machado / Luiz Paulo Maia Revisto por Sidney Lucena (Prof. UNIRIO) Capítulo 3 Concorrência Arquitetura de Sistemas Operacionais – Machado/Maia
2
3 – Concorrência Sist. Monoprogramável x Multiprogramável
Sistemas Monoprogramáveis: Apenas um programa sendo executado a cada vez Execução de um novo programa deve esperar o encerramento do programa sendo executado Sistemas Multiprogramáveis: Permite a concorrência dos programas Execução de novos programas inicia-se durante a execução de outros programas Arquitetura de Sistemas Operacionais – Machado/Maia 3/1
3
3 – Concorrência Sist. Monoprogramável x Multiprogramável
Vantagens dos Sistemas Multiprogramáveis: Tempo total de execução de vários programas torna-se menor Uso mais racional dos recursos Melhor aproveitamento do espaço de memória Aproveitamento do processador durante operações de E/S Cada programa (processo) ocupa uma fatia de tempo do processador Arquitetura de Sistemas Operacionais – Machado/Maia 3/2
4
3 – Concorrência Sist. Monoprogramável x Multiprogramável 3/3
Arquitetura de Sistemas Operacionais – Machado/Maia 3/3
5
3 – Concorrência Sist. Monoprogramável x Multiprogramável
Exemplo hipotético com 3 programas: Prog 1: 10% de CPU, 30% de memória e 5 min Prog 2: 50% de CPU, 30% de memória e 15 min Prog 3: 30% de CPU, 20% de memória e 10 min Execução concorrente dos 3 programas: < 90% de CPU, < 80% de memória e < 15 min Arquitetura de Sistemas Operacionais – Machado/Maia 3/4
6
3 – Concorrência Sist. Monoprogramável x Multiprogramável
Troca de contexto: Mudança de um processo para outro faz com que todo o conteúdo dos registradores seja trocado (estado do sistema) Quando um processo retorna à sua execução, todo o contexto imediatamente anterior à sua saída deve ser recuperado Arquitetura de Sistemas Operacionais – Machado/Maia 3/5
7
3 – Concorrência Interrupção e Exceção
Durante a execução de um programa, alguns eventos inesperados podem ocorrer, ocasionando um desvio forçado no fluxo de execução Sinalização de operação de E/S de dispositivo externo (interrupção) Problemas decorrentes da execução de instruções do programa (exceção) Ao final de cada instrução, a UC verifica a ocorrência de interrupção ou exceção Processador interrompe o programa em execução para tratar o evento Arquitetura de Sistemas Operacionais – Machado/Maia 3/6
8
3 – Concorrência Interrupção e Exceção 3/7
Arquitetura de Sistemas Operacionais – Machado/Maia 3/7
9
3 – Concorrência Interrupção e Exceção Mecanismo de interrupção
Sinal de interrupção gerado p/ o processador Processador termina a instrução corrente e identifica qual interrupção foi gerada Registradores PC e de status são salvos, PC recebe endereço inicial da rotina de tratamento Rotina de tratamento salva demais conteúdos de registradores na pilha de controle e é executada Após o término, todos os registradores são restaurados e programa interrompido retorna Arquitetura de Sistemas Operacionais – Machado/Maia 3/8
10
3 – Concorrência Interrupção e Exceção
Para cada tipo de interrupção existe uma rotina de tratamento associada para a qual o fluxo de execução é desviado Dois métodos para tratamento de interrupções Vetor de interrupção Contém o endereço inicial de todas as rotinas de tratamento p/ cada tipo de evento A partir de um registrador de status Uma única rotina que verifica o tipo de evento e faz o tratamento adequado Arquitetura de Sistemas Operacionais – Machado/Maia 3/9
11
3 – Concorrência Interrupção e Exceção
Interrupções são decorrentes de eventos assíncronos, sem relação com o programa corrente Podem ocorrer múltiplas vezes num mesmo intervalo de tempo (simultaneamente) Rotina de tratamento pode desabilitar tratamento das demais interrupções Interrupções mascaráveis Demais interrupções podem ser enfileiradas segundo respectivas prioridades Arquitetura de Sistemas Operacionais – Machado/Maia 3/10
12
3 – Concorrência Interrupção e Exceção
Exceções são eventos síncronos, resultado direto da execução do programa corrente Divisão por zero Overflow em operação aritmética São previsíveis e só podem ocorrer um de cada vez Tratamento equivalente ao da interrupção Rotina de tratamento para uma determinada exceção pode ser escrita pelo próprio programador Arquitetura de Sistemas Operacionais – Machado/Maia 3/11
13
3 – Concorrência Operações de Entrada/Saída
Antes, instruções de E/S específicas para cada periférico eram executadas pela CPU Surgimento do controlador de dispositivo desonerou o processador e permitiu maior agilidade Processador não mais se comunica diretamente com o dispositivo, somente via controlador Instruções de E/S mais simplificadas Inicialmente operava em modo busy-wait, posteriormente fazendo polling nos dispositivos, finalmente se valendo de interrupção para avisar término da operação de E/S Arquitetura de Sistemas Operacionais – Machado/Maia 3/12
14
3 – Concorrência Operações de Entrada/Saída 3/13
Arquitetura de Sistemas Operacionais – Machado/Maia 3/13
15
3 – Concorrência Operações de Entrada/Saída
Transferência de grande volume de dados entre controladora e MP onera por demais o processador Solução usando DMA – Direct Memory Access Permite que dados sejam transferidos entre controladoras e MP sem intervenção do processador, exceto no início e no final Área de memória usada pelo controlador de DMA é chamada buffer de entrada/saída Controle de barramento assumido temporariamente pelo DMA, processador limitado a acessar caches Arquitetura de Sistemas Operacionais – Machado/Maia 3/14
16
3 – Concorrência Canal de E/S Introduzido pela IBM no sistema 7094
Canal de E/S é um processador com capacidade de executar programas de E/S e controle total dos dispositivos Instruções de E/S armazenadas na MP ou no canal de E/S, porém executadas pelo canal de E/S Processador instrui o canal de E/S a executar um programa de canal, responsável por especificar dispositivos, buffers e ações Ao final da transferência, gera interrupção Pode controlar múltiplos dispositivos de E/S Arquitetura de Sistemas Operacionais – Machado/Maia 3/15
17
3 – Concorrência Canal de E/S 3/16
Arquitetura de Sistemas Operacionais – Machado/Maia 3/16
18
3 – Concorrência Buffering
Consiste em utilizar uma área na memória principal para transferência de dados entre dispositivos de E/S e a MP Numa operação de leitura do dispositivo: Dado é transferido para buffer sem onerar o processador, dispositivo fica liberado após conclusão Numa operação de gravação p/o dispositivo: Dado é escrito rapidamente no buffer, liberando o processador para outras atividades enquanto este é gravado no dispositivo. Arquitetura de Sistemas Operacionais – Machado/Maia 3/17
19
3 – Concorrência Buffering 3/18
Arquitetura de Sistemas Operacionais – Machado/Maia 3/18
20
3 – Concorrência Buffering
Unidade de transferência é o registro, cujo tamanho depende do tipo de dispositivo Vários registros podem ser armazenados num buffer Buffer conterá dados lidos mas ainda não processados, ou dados processados mas ainda não gravados Buffering minimiza problemas decorrentes da disparidade de velocidades, compatibilizando tempos de acesso de maneira que processador e dispositivo de E/S não fiquem ociosos Arquitetura de Sistemas Operacionais – Machado/Maia 3/19
21
3 – Concorrência Spooling
Simultaneous Peripheral Operation On-line, introduzido no fim dos anos 1950 Técnica usa uma área do disco (arquivo) para buffering de impressão Tudo que é submetido para impressão vai para o arquivo de spool, liberando o programa de origem SO é quem gerencia os jobs de impressão Arquitetura de Sistemas Operacionais – Machado/Maia 3/20
22
3 – Concorrência Reentrância 3/21
Arquitetura de Sistemas Operacionais – Machado/Maia 3/21
23
3 – Concorrência Proteção do Sistema
SO deve garantir a confiabilidade e a integridade dos programas e dados dos usuários, além do próprio SO Cada programa possui uma área reservada para código e outra para dados que devem ser preservadas durante sua execução Idem para o SO em si Arquivos também devem ter sua integridade garantida quando acessados por múltiplos programas e/ ou múltiplos usuários Recursos não devem ser monopolizados Arquitetura de Sistemas Operacionais – Machado/Maia 3/22
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.