1 / 23

Arquitetura de Sistemas Operacionais – Machado/Maia

Arquitetura de Sistemas Operacionais Francis Berenger Machado / Luiz Paulo Maia Revisto Capítulo 3 Concorrência. Arquitetura de Sistemas Operacionais – Machado/Maia. 3 – Concorrência. Sist. Monoprogramável x Multiprogramável Sistemas Monoprogramáveis:

dard
Download Presentation

Arquitetura de Sistemas Operacionais – Machado/Maia

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Arquitetura de Sistemas Operacionais Francis Berenger Machado / Luiz Paulo Maia Revisto 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 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 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 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 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 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 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

More Related