150 likes | 306 Views
Capitulo 6: Entrada e Saída. Felipe Sampaio. Introdução. A arquitetura E/S de um computador constitui sua interface com o mundo exterior Existem 3 técnicas principais de E/S: E/S programada E/S dirigida por interrupção DMA (Acesso Direto à Memória) Formado por módulos E/S. Introdução.
E N D
Capitulo 6:Entrada e Saída Felipe Sampaio
Introdução • A arquitetura E/S de um computador constitui sua interface com o mundo exterior • Existem 3 técnicas principais de E/S: • E/S programada • E/S dirigida por interrupção • DMA (Acesso Direto à Memória) • Formado por módulos E/S
Introdução • Por que existem módulos E/S? • Grande variedade de periféricos • Periféricos tem velocidade baixa • Usam formatos de dados e palavras diferentes
Dispositivos Externos • Também chamados de periféricos • Três tipos: • Dispositivos para comunicação com o usuário • Dispositivos para comunicação com a máquina • Dispositivos para comunicação com dispositivos remotos
Módulos de E/S • Funções principais: • Controle e temporização • Comunicação com o processador • Comunicação com dispositivos • Área de armazenamento temporário de dados • Detecção de erros
E/S Programada • Os dados são transferidos entre o processador e o modulo de E/S • O processador tem controle direto da operação de E/S • O módulo E/S executa a operação e sinaliza o término através de um registrador de estado
Comandos de E/S • Controle • Ativa um periférico e indica uma ação a ser executada • Teste • Testa as condições de estado associadas a um módulo de E/S e seus periféricos • Leitura • Obter um dado do periférico • Gravação • Faz com que o módulo E/S obtenha um dado do barramento de dados e o transmita para o periférico
Instruções E/S • Modos de endereçamento • Mapeado na memória • Único espaço de endereçamento para posições de memória e dispositivos E/S • Endereçamento independente • Instruções dependem do modo de endereçamento • Vantagem/Desvantagem
E/S Dirigida por Interrupção • O problema da E/S programada é que o processador tem que ficar esperando o módulo E/S ficar pronto • A solução são as interrupções • É mais eficiente pois elimina ciclos de espera desnecessários
Processamento de Interrupção • Feito em 9 etapas: • O dispositivo envia um sinal de interrupção • O processador termina a execução da instrução atual • O processador testa se existe uma interrupção pendente • O processador salva o contexto atual • O processador carrega o contador de programa com o endereço da rotina de tratamento da interrupção • A rotina de interrupção armazena os registradores na pilha • A rotina então é iniciada • Os registradores são restaurados • O contexto é restaurado
Aspectos de projeto • Técnicas de identificação de qual dos módulos E/S enviou a interrupção: • Múltiplas linhas de interrupção • Identificação por software • Daisy chain • Arbitração do barramento
Acesso Direto à Memória (DMA) • Desvantagens da E/S programada e da E/S dirigida por interrupção • A taxa de transferência de E/S é limitada pela velocidade com que o processador pode testar e servir um dispositivo • O processador se ocupa de gerenciar a transferência de dados de E/S, tendo de executar várias instruções a cada transferência
Acesso Direto à Memória (DMA) • Módulo adicional no barramento do sistema (controlador DMA) • Imita o processador • Pode forçar o processador a suspender sua operação
Acesso Direto à Memória (DMA) • Para ler ou escrever dados, o processador envia as seguintes informações para o controlador DMA: • Indicação de operação (leitura ou escrita) • Endereço do dispositivo de E/S envolvido • Endereço de memória inicial • Número de palavras a serem lidas ou escritas • O processador fica liberado, e ao término da execução o controlador DMA gera uma interrupção
Canais e Processadores de E/S • A evolução da função de E/S • A CPU controla diretamente cada dispositivo periférico • Um controlador ou módulo de E/S é adicionado. A CPU usa E/S programada sem interrupções • E/S com interrupções • DMA • O módulo de E/S é aprimorado, tornando-se um processador de E/S • O módulo de E/S inclui uma memória local própria, tornando-se um computador