Organização e Arquitetura de computadores



Documentos relacionados
ENTRADA E SAÍDA DE DADOS

Infraestrutura de Hardware. Entrada/Saída: Comunicação Processador, Memória e E/S

Mecanismo de Interrupção

Organização de Computadores 1

Arquitetura e Organização de Computadores I

Sistemas Operacionais Gerência de Dispositivos

Organização e Arquitetura de Computadores

Sistemas Operacionais

William Stallings Arquitetura e Organização de Computadores 8 a Edição

Organização de Computadores. (Aula 5) Entrada/Saída

Sistemas Operacionais

Estruturas do Sistema de Computação

Interface entre Processadores e Periféricos

Entrada e Saída. Interface entre periféricos, processador e memória. Fonte: Minho - Portugal 1

ARQUITETURA DE COMPUTADORES

Entrada e Saída (Input/Output I/O) Organização de Computadores (Aula 5) Entrada/Saída. Diferentes Tipos de Dispositivos (1)

CAPÍTULO 2 CARACTERÍSTICAS DE E/S E PORTA PARALELA

Principais Componentes. Funções do Barramento. Esquema de Barramento. Um Barramento (Bus) é. Barramentos. Sistema de Barramento no Pentium

Componentes básicos de um sistema computacional. Cap. 1 (Stallings)

Entrada e Saída. Prof. Leonardo Barreto Campos 1

Interrupções. As interrupções são casos especiais de chamadas de procedimentos.

Arquitetura de Computadores Arquitetura de entrada e saída

E/S PROGRAMADA E/S PROGRAMADA E/S USANDO INTERRUPÇÃO

Sistemas Operacionais Entrada / Saída. Carlos Ferraz (cagf@cin.ufpe.br) Jorge Cavalcanti Fonsêca (jcbf@cin.ufpe.br)

Sistemas Operacionais. Roteiro. Hardware. Marcos Laureano

Dispositivos de Memória

Arquitetura de Computadores - Revisão -

O hardware é a parte física do computador, como o processador, memória, placamãe, entre outras. Figura 2.1 Sistema Computacional Hardware

discos impressora CPU memória AULA 04 - Estruturas de Sistemas Computacionais Operação dos sistemas de computação Controlador de disco

SISTEMAS OPERACIONAIS CAPÍTULO 3 CONCORRÊNCIA

Sistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 04 - Concorrência. Cursos de Computação

Barramentos e Chipsets

Interface entre Processadores e Periféricos

ENTRADA E SAÍDA (I/O)

Barramentos - BUS. Professor Especialista: Airton Ribeiro de Sousa

Visão Geral de Sistemas Operacionais

Arquitetura e Organização de Computadores

5 Entrada e Saída de Dados:

Sistemas Operacionais

Estrutura de um Computador

Unidade Central de Processamento (CPU) Processador. Renan Manola Introdução ao Computador 2010/01

Arquitetura de Computadores. Professor: Vilson Heck Junior

Modelo Genérico de Módulo de E/S Grande variedade de periféricos

Memória Cache. Prof. Leonardo Barreto Campos 1

Dispositivos de Entrada e Saída

TI Aplicada. Aula 03 Componentes Básicos Hardware e Rede. Prof. MSc. Edilberto Silva prof.edilberto.silva@gmail.com

RAID Redundat Arrays of Inexpensive Disks

Conceitos de Entrada e Saída

Arquitetura de Computadores I

Setores Trilhas. Espaço entre setores Espaço entre trilhas

Componentes de um Sistema de Computador

Prof. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO

Sistemas Operacionais: Sistema de Arquivos

UFRJ IM - DCC. Sistemas Operacionais I. Unidade IV Gerência de Memória Secundária. Prof. Valeria M. Bastos 18/06/2012 Prof. Antonio Carlos Gay Thomé

Arquitetura de Von Neumann e os Computadores Modernos

Sistemas Operativos. Sumário. Estruturas de sistemas de computação. ! Operação de um sistema de computação. ! Estruturas de E/S

Gerência de Entrada/Saída

Arquitectura de Computadores II. Interface com Periféricos

RAID 1. RAID 0 2. RAID 1

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES. Prof. André Dutton

Curso Técnico de Nível Médio

4.1 - Sistema de I/O. CEFET-RS Curso de Eletrônica. Organização de Computadores. Profs. Roberta Nobre & Sandro Silva

Sistemas Operacionais. Prof. André Y. Kusumoto

Multiprocessamento. Multiprocessadores com memória distribuída (multicomputador)

Organização e Arquitetura de Computadores II (CEA 509) Armazenamento e o Sistema de E/S

Gerenciamento de Entrada e Saída Hélio Crestana Guardia e Hermes Senger

Conceitos Básicos. Conceitos Básicos Memória

Dispositivos de Armazenamento em massa. José Roberto B. Gimenez

Arquitetura de Computadores para. Sistemas Operacionais. Sistemas Operacionais. Sumário

6 - Gerência de Dispositivos

BARRAMENTO DO SISTEMA

Aula 04 A. Barramentos. Prof. Ricardo Palma

Capítulo 2 (Livro Texto*) - Notas de Aula - Parte II

Arquitectura de Computadores

Arquitetura de Computadores. Tipos de Instruções

O BARRAMENTO PCI. Sérgio Antônio Martini Bortolin Júnior 1 Alessandro Girardi 2

Fundamentos em Informática

BACHARELADO EM SISTEMAS DE INFORMAÇÃO EaD UAB/UFSCar Sistemas de Informação - prof. Dr. Hélio Crestana Guardia

Infraestrutura de Hardware. Entrada/Saída: Armazenamento

Arquitetura de Computadores Pentium 4 e PCIe

Sistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 03 Conceitos de Hardware e Software parte 02. Cursos de Computação

3. Arquitetura Básica do Computador

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES DISPOSITIVOS DE ENTRADA E SAÍDA. Prof. Dr. Daniel Caetano

Universal Serial Bus USB

Arquitetura de um Computador

Um retrospecto da aula passada... Um retrospecto da aula passada... Principais Aspectos de Sistemas Operacionais. Gerência de E/S

Escola Secundária de Emídio Navarro

EA960 Redundância e Confiabilidade: RAID

Introdução à Organização de Computadores Entrada e Saída. Sistemas da Computação Prof. Rossano Pablo Pinto, Msc. rossano at gmail com 2 semestre 2007

Sistemas Operacionais. Prof. Pedro Luís Antonelli Anhanguera Educacional

Sistemas Operacionais

Introdução aos Sistemas

MEMÓRIA. A memória do computador pode ser dividida em duas categorias:

8. Interfaceamento entre Processador e Periféricos. Características de projeto de sistemas de I/O expansibilidade, robustez frente a falhas

FACULDADE PITÁGORAS DISCIPLINA: ARQUITETURA DE COMPUTADORES

IFPE. Disciplina: Sistemas Operacionais. Prof. Anderson Luiz Moreira

AVALIAÇÃO À DISTÂNCIA 1 GABARITO

INFORMÁTICA - BICT (noturno)

UCP. Memória Periféricos de entrada e saída. Sistema Operacional

PCI - PERIPHERAL COMPONENT INTERCONNECT

Transcrição:

Organização e Arquitetura de computadores Interface do processador com o mundo externo, dispositivos de E/S e barramentos Prof. Dr. Luciano José Senger Introdução O ambiente externo ao processador ébastante diverso e composto por vários dispositivos adicionais que servem para a entrada e saída (E/S) de dados Dispositivos de I/O são diversos em relação a: Comportamento entrada, saída ou armazenamento Parceria ou máquina Taxa de dados a taxa na qual os dados podem ser transferidos entre o dispositivo de I/O e memória ou processador São medidas de desempenho para um sistema de entrada e saída: Desempenho Capacidade de expansão Necessidade Custo, tamanho, peso Medidas de Desempenho Dispositivos de E/S Largura de Banda (I/O bandwidth, throughput) quantidade de informação que pode ser trocada por unidade de tempo. Qual é quantidade de dados que pode movimentarse pelo sistema em um certo intervalo de tempo? Quantas operações de E/S podem ser realizadas por unidade de tempo? Tempo de E/S ou latência o tempo para realizar um operação de E/S Sistemas desktop e embutidos: tempo de resposta e custo de E/S Outros sistemas: vazão e facilidade de expansão Exemplos Dispositivo Teclado Mouse Impressora Monitor Rede local Disco magnético I/O/S input input output output input or output storage Parceria máquina máquina Taxa (Mb/s) 0.0001 0.0038 3.2000 800.0000-8000.0000 100.0000-1000.0000 240.0000-2560.0000 8 orders of magnitude range Um sistema típico t de E/S Processor Cache Main Memory Interrupts Memory - I/O Bus I/O Controller Disk Disk I/O Controller Graphics I/O Controller Network Armazenamento em disco e confiabilidade Discos magnéticos contam com pratos giratórios cobertos com superfície magnética e armazenamento não volátil 5000 a 15000 RPMs Superfícies dividas em trilhas e setores Cilindros: todas as trilhas sob a cabeça de leitura em um instante de tempo Acesso em 3 estágios Posicionamento da cabeça de leitura (seek): tempo de seek (3 a 15ms), depende da localidade Setor desejada encontre a cabeça de leitura: latência rotacional Tempo de transferência: tempo para transferir um bloco de bits Como aumentar a confiabilidade Evitar ocorrência de falha pela construção Uso de redundância para concluir o serviço mesmo na ocorrência de falhas Previsão de falha 1

Armazenamento em discos e confiabilidade Discos magnéticos Exemplo de valores Redundant arrays of inexpensive disks Objetivo: melhorar a disponibilidade de armazenamento em disco Múltiplos discos pequenos ao contrário de apenas um disco grande 0 Striping: espalhamento de blocos através de múltiplos discos Vários blocos podem ser acessados em paralelo aumentando o desempenho Mesmo custo que um disco grande Sem redundância a falha de um ou mais discos émais provável na medida que aumenta o número de discos blk1 blk2 blk3 blk4 1 Redundância via espelhamento Usa o dobro de discos do 0, de forma que sempre existe uma cópia dos dados # de discos para redundância = # discos para dados, de forma que custa o dobro de um disco grande As escritas devem ser realizadas em dois discos, de forma que o desempenho de 1 éa metade do 0 Se um disco falha, o sistema recupera através do disco espelho 0 +1: redundância + espelhamento = mínimo de 4 discos JBOD: pode usar dois discos (divide cada disco em dois) blk1 blk2 blk3 blk4 blk1 blk2 blk3 blk4 2 Técnica de acesso paralelo: todos os discos participam de qualquer requisição de E/S Esquema de detecção de erros e correção:-atualmente implementados no hardware do disco Necessita de vários discos Na prática, não muito utilizado blk1,b0 1 blk1,b1 blk1,b2 blk1,b3 Checks 4,5,6,7 Checks 2,3,6,7 Checks 1,3,5,7 0 1 0 1 0 1 3 5 6 0 7 4 2 1 redundant (check) data 3 Paridade intercalada por bit Outros 4, 5, 6... Diferentes organizações para melhorar disponibilidade e desempenho. blk1,b0 1 blk1,b1 blk1,b2 blk1,b3 0 1 0 (odd) bit parity disk Exemplos 2

Barramentos Barramento éum canal de comunicação compartilhado entre o processador e dispositivos de E/S Vantagens: versatilidade e baixo custo Desvantagem: gargalo de comunicação, limitando a vazão máxima de E/S Velocidade máxima do barramento élimitada por fatores físicos: extensão do barramento e número de dispositivos Como se torna difícil trabalhar com muitos fios paralelos em alta velocidade devido variações de clock e atrasos, barramentos paralelos tem sido substituídos por barramentos seriais de alta velocidade (p.e., PCI para PCI express) Fundamentos Conjunto de linhas de controle e linhas de dados (linhas de dados servem para endereços) Transação de barramento Mestre define o comando e endereço Trabalhador recebe o comando e realiza o trabalho Barramentos Classificação Barramentos entre processador e memória: curtos e de alta velocidade Barramentos de E/S: mais longos, diversos dispositivos SCSI, USB Não realizam interface direta com a memória; barramento processador-memória é empregado (backplane) Backplane bus: interconexão de dispositivos com a memória ATA, PCI Express Barramentos gráficos Barramentos de E/S Serve como um modo para expandir a máquina e conectar novos dispositivos Padrões (ISA, EISA, PCI, AGP) servem como uma especificação para os fabricantes de computadores e periféricos Barramentos Esquemas básicos de comunicação Síncrono Geralmente entre Processador memória apenas Inclui um clock nas linhas de controle e um protocolo de comunicação que é fixo e relacionado diretamento com o clock Inclui uma lógica pequena que quando implementada produz um barramento com alto desempenho Cada dispositivo deve ter a mesma taxa de clock Assíncrono Barramentos de E/S Necessita de protocolo de aperto de mãos pois não utiliza o clock Linhas de controle adicionais Pode acomodar diversos dispositivos diferentes Desempenho pior que o síncrono Barramentos Barramento síncrono Em barramentos síncronos, o dispositivo pode pedir um tempo de espera (wait state) caso não consiga responder dentro do tempo previsto. Nesse caso, o processador aumenta o tempo de espera para concluir a operação Protocolo de hand shaking Saída (leitura) de dados da memória para um dispositivo de E/S ReadReq 1 2 Data addr data 3 Ack 4 6 5 7 DataRdy Dispositivo de E/S sinaliza uma requisição trocando para 1 o sinal de ReadReq e colocando o addr na linha de dados 1. Memória enxerga o sinal ReadReq, lê o addr das linhas de dados e sinaliza o reconhecimento (Ack) 1. Dispositivo de E/S enxerga o Ack e libera o sinal ReadReq / linha dados 1. Memória enxerga o ReadReq tornar-se baixo e muda para 0 o sinal Ack 1. Quando a memória tem os dados prontos, ela coloca no barramento de dados e sinaliza DataRdy 1. Dispositivo enxerga DataRdy, lê os dados e sinaliza Ack 1. Memória enxerga o Ack, solta as linhas de dados e muda para 0 DataRdy 1. Dispositivo enxerga transição de DataRdy e muda para 0 o Ack Arbitragem de barramentos Arbitragem de barramentos Vários dispositivos podem requisitar o barramento Esquemas de arbitragem de barramento usualmente tentam balancear: Prioridade o dispositivo com maior prioridade deve ser atendido primeiro Justiça mesmo para o dispositivo de menor prioridade o barramento deve estar disponível Quatro classes Em cadeia (Daisy chain) Centralizado, com arbitragem paralela Arbitragem distribuída por auto-seleção: cada dispositivo coloca um código no barramento indicando sua identidade no barramento Arbitragem distribuída com detecção de colisão 3

Arbitragem de barramento Daisy Chain Arbitragem em paralelo Device 1 Highest Priority Device 2 Device N Lowest Priority Device 1 Device 2 Device N Bus Arbiter Ack Ack Ack Release Request wired-or Bus Arbiter Ack1 Request1 Request2 RequestN Ack2 AckN Data/Addr Data/Addr Vantagem: simples Desvantagens Não garante justiça:-dispositivo de baixa prioridade pode ficar bloqueado Lento: o sinal de garantia de barramento limita o desempenho do barramento Vantagens: flexível, pode garantir justiça Desvantages: mais complicada a implementação Barramentos para um processador 2 serial ATAs: 150 MB/s Memory Controller Hub ( Northbridge ) Graphics output: 2.0 GB/s Gbit ethernet: 0.266 GB/s 2 parallel ATA: 100 MB/s I/O Controller Hub ( Southbridge ) System Bus ( Front Side Bus ): 64b x 800 MHz (6.4GB/s), 533 MHz, or 400 MHz DDR SDRAM Main Memory Hub Bus: 8b x 266 MHz PCI: 32b x 33 MHz 8 USBs: 60 MB/s Comunicação entre os dispositivos e o processador Como o processador controla os dispositivos Intruções de I/O especiais Especificam o dispositivo e o comando E/S mapeada na memória Leituras e escritas comuns são interpretadas como comandos de E/S Load/stores para os endereços de E/S são feitas apenas pelo SO Como o dispositivo se comunica com o processador Polling o processador periodicamente checa o status do dispositivo de E/S para determinar o status Processador faz todo o trabalho Desperdiça muito tempo de processamento devido as diferenças de desempenho entre o processador e dispositivo (p.e. Impressora e processador) Interrupções o dispositivo de E/S avisa uma interrupção para requisitar a atenção do processador Interrupção éum evento assíncrono àexecução normal de E/S por interrupções UCP não gasta ciclos esperando a resposta do dispositivo Dispositivo gera uma sequência de eventos que interrompem a execução normal de processamento E/S por interrupções Após receber um sinal de interrupção (IRQ) o processador envia sinal ao dispositivo (reconhecimento da interrupção) -dispositivo então desabilita o sinal da interrupção Ações do hardware processador salva o contexto do processo em execução na pilha PC, PSW (Program Status Word) Carrega um novo valor para PC, a rotina de tratamento de interrupções (ISR interrupt service routine) Realiza o tratamento da interrupção Recupera na pilha o contexto do programa Atendimento de uma interrupção pode ser interrompido por um dispositivo de maior prioridade (aninhamento) Interrupções mascaráveis e não mascaráveis não-mascaráveis são usadas para sinalizar quase catástrofes, como um erro de paridade de memória 4

Direct Memory Access (DMA) Para dispositivos com alta transferência de dados (p.e. discos) o esquema de interrupções consome muitos ciclos de processamento DMA o controlador de E/S tem a habilidade de tornar-se mestre no barramento e transferir os dados diretamente de/para a memória sem envolver o processador O processador inicia a transferência DMA informando o endereço de E/S, a operação a ser realizada, o endereço de memória de destino/fonte e o número de Bytes a serem transferidos O controlador de DMA gerencia a transferência inteira, controlando o barramento Quando a transferência DMA torna-se completa, o controlador de E/S interrompe o processador para avisar do término da operação DMA e o problema de consistência em cache Podem existir múltiplos dispositivos DMA no sistema Acesso àmemória pelo processador ébloqueado Apenas memória cache poderá ser acessada Em sistema com caches, existem duas cópias do item de dados: um na cache e outro na memória Em uma leitura DMA (do disco para a memória) o processador usarádados antigos se a localização estiver na cache Em uma escrita DMA (da memória para o disco) e uma cache write-back o dispositivo de E/S receberá dados antigos se os dados estiverem na cache e ainda não tiverem sido atualizados na memória principal DMA e o problema de consistência em cache O problema pode ser resolvido: Roteando toda a atividade de E/S além da cache caro e desempenho negativo no desempenho O sistema operacional seletivamente invalida a cache para uma operação de leitura e força write-backspara uma operação de escrita (flushing) Definir um hardware que seletivamente invalide ou descarregue a cache Processadores de E/S ( Channel I/O) Entrada e saída e o sistema operacional O sistema operacional atua como interface entre o hardware de E/S e os programas Proteger os recursos compartilhados, os programas de usuário não podem ter acesso direto aos dispositivos de E/S O sistema operacional deve enviar comandos para os dispositivos, manipular interrupções geradas pelos dispositivos e escalonar as requisições de E/S para melhorar o desempenho do sistema Chamadas de sistema (INT 21, syscalls) transferem o controle para o sistema operacional que atua como sistema supervisor dos dispositivos Exemplo: processadores x86 x86 pode ter 256 interrupções Quando o processador recebe um sinal de interrupção, ele envia um sinal de reconhecimento de interrupção; o módulo de E/S responde colocando um Byte na linha de dados Esse Byte é chamado vetor de interrupções Interrupção vetorizada 1 Byte de dados que especifica o tipo da interrupção deve acompanhar cada interrupção Vetor éum ponteiro (endereço) para a tabela de interrupções A tabela éarmazenada na memória nos endereços de 0000:0000 a 0000:03ffh A Tabela contém 256 ponteiros para o código ISR Também referenciado como manipulador de interrupções 5

Processadores x86 Os processsadores x86 tem apenas uma linha de requisição de interrupção (INTR) e uma linha de reconhecimento de interrupção (INTA) Para que o processador possa manipular vários dispositivo e prioridades, ele éconfigurado por um árbitro de interrupções Atéo 386: 82C59A Um número de IRQ por dispositivo Atualmente: barramentos de pontes - ponte sul Dispositivos podem compartilhar números de IRQ (PCI) Controlador de interrupção: 82C59A permite que vários dispositivos enviem sinais de interrupção ao processador 8 linhas de interrupção Pode ser ligado em cascata Ao receber o sinal INTA do processador, o chip coloca o vetor de interrupções no barramento de dados Barramento ISA: dois chips em cascata via entrada 2 Conexões externas para interrupções NMI - Non-Maskable Interrupt 8086 CPU int Software NMI Requesting Device Interrupt Logic into NMI Divide Error Traps Single Step INTR - Interrupt Request INTR Programmable Interrupt Controller (part of chipset) Intel 8259A PIC Controlador de interrupções Intel 82C59A: ligação em cascata Interface de periféricos ricos Intel 82C55A Usado no 386 Única pastilha projetada para ser empregada juntamente com o processador 386 Implementa um módulo de E/S Exemplo: controle do teclado e do monitor Leituras recomendadas Livros Patterson Stallings Murdocca 6