GRECO
DEPARTAMENTODE INFORMÁTICA
UFPE
Dispositivos de E/S (I/O)Dispositivos de E/S (I/O)
GRECO
DEPARTAMENTODE INFORMÁTICA
UFPE
Sistema de E/SSistema de E/S
CPU Mem. Contr.disp 1
Contr.disp 2
Dispositivos E/S(barram. dedicado)
Contr.disp N
Disp. E/S(barram. compart.)
barramento de sist.
Subsistema de E/S
Sistema de E/S
Disp. E/S: comunicação computador/ambiente
GRECO
DEPARTAMENTODE INFORMÁTICA
UFPE
Dispositivos de E/SDispositivos de E/S
Tipos
• Armazenamento
• Comunicação com o ambiente Tempo de acesso
• Muito maior que o de acesso à memória
• Varia com dispositivo Taxa de transferência
• Depende da taxa e quantidade de info. Taxa de erro
• Códigos corretores
GRECO
DEPARTAMENTODE INFORMÁTICA
UFPE
Controladores de I/O (E/S)Controladores de I/O (E/S)
Função• Controlar um ou mais dispositivos e trocar dados entre estes
dispositivos, memória e /ou registradores da CPU.
• Exemplos:
– Controle de temporização
– Comunicação com CPU
– Comunicação com dispositivos
– Armazenamento de dados (Data Buffering)
– Detecção de Erro
•
GRECO
DEPARTAMENTODE INFORMÁTICA
UFPE
Modelo Genérico de um Modelo Genérico de um controlador de Entrada/Saídacontrolador de Entrada/Saída
Barramentos do sistema
Links para dispositivosexternos
Controlador de E/S
Dipsositivos periféricos ou periférivcos
• Controle• Status• Dados
• Linhas de endereços• Linhas de dados• Linhas de Controle
GRECO
DEPARTAMENTODE INFORMÁTICA
UFPE
Módulo de Entrada/Saída (I/O)Módulo de Entrada/Saída (I/O)
Interfacelógica comdispositivoexerno
Interfacelógica comdispositivoexterno
Registrador de dados
Status/Registrador de Controle
Lógicade E/S
DadosStatusControle
DadosStatusControle
Linhasde Endereço
Linhas de Controle
Linhas deDados
Interface parabarramento do sistema
Interface paradispositivoexterno
GRECO
DEPARTAMENTODE INFORMÁTICA
UFPE
Dispositivos de E/SDispositivos de E/S Diversidade
– Quais dispositivos de E/S podem ser conectados ao computador ?
Capacidade– Quantos dispositivos de E/S podem ser conectados ao
computador ?
Medidas de Performance– Throughput ou Largura de Banda (I/O bandwidth)
• Número médio de tarefas computadas pelo servidor na unidade de tempo
– Tempo de resposta ou tempo de latência (latency)• Tempo gasto desde que uma tarefa é colocada na fila de
execução até sua execução pelo servidor
GRECO
DEPARTAMENTODE INFORMÁTICA
UFPE
Dispositivos de E/SDispositivos de E/S
Características na organização de dispositivos de E/S
– Utilização– Entrada (Input)– Saída (Output)– Armazenamento
– Interface– Um ser humano ou máquina está do outro lado do
dispositivo de E/S, oferecendo ou lendo dados
– Taxa de transferência– Volume de dados por segundo transf. entre os dispositivos
de E/S e a memória principal
GRECO
DEPARTAMENTODE INFORMÁTICA
UFPE
Dispositivos de E/SDispositivos de E/S
Dispositivo Utilização Interface Taxa (KB/s)Teclado Entrada Humana 0.01Mouse Entrada Humana 0.02Scanner Entrada Humana 200Impressora. de linha Saída Humana 1Impressora laser Saída Humana 100 Network Entrada/Saída Máquina 10000Disco Magnético Armazenamento Máquina 2000Disco Ótico Armazenamento Máquina 500
GRECO
DEPARTAMENTODE INFORMÁTICA
UFPE
Dispositivo ExternoDispositivo Externo
Dados para e do ambiente
Lógica de controle
Buffer
Transdutor
Info. para ocontroladorde E/S
Status paracontrolador de E/S
Dados para edo controladorde E/S
Determina a função do dispositivo- Input ou Read- Output ou Write
Indica estado do dispositivo- Ready- Not Ready
Conjunto de bitsa serem enviados para ou recebidosdo módulo de I/O
- Converte dados elétricos para outras formas de energia durante Output
- Converte outras formas de energia em eletric. durante Input
GRECO
DEPARTAMENTODE INFORMÁTICA
UFPE
Dispositivos de E/SDispositivos de E/S
Produtorde tarefas Servidor
Gera tarefas a serem executadas
Executa tarefasenviadas pela fila
Fila
Modelo Servidor/Produtor
GRECO
DEPARTAMENTODE INFORMÁTICA
UFPE
Dispositivos de E/SDispositivos de E/S
Modelo Servidor/Produtor
Servidor
Executa tarefasenviadas pela fila
FilaProdutorde tarefas
Servidor
Gera tarefas a serem executadas
Executa tarefasenviadas pela fila
FilaAumento de Througputdividindo tarefas
GRECO
DEPARTAMENTODE INFORMÁTICA
UFPE
Interface de Saída - ImpressoraInterface de Saída - Impressora
Sinal de Transferência
bit 0
bit 1
bit 2
bit 7
Q S FlagQ R
bit 0
bit 1
bit 2
bit 7 Impressora
ProntoStatus
Dado Presente
Buffer de saída do sistema
Buffer de entradada impressora
CPUPõe dado no buffer de saídaSe Status = 1 - Ativa Sinal de Transferência
CPUPõe dado no buffer de saídaSe Status = 1 - Ativa Sinal de Transferência
ImpressoraSe Dado Presente = 0 - Lê dado - Ativa sinal Pronto
ImpressoraSe Dado Presente = 0 - Lê dado - Ativa sinal Pronto
GRECO
DEPARTAMENTODE INFORMÁTICA
UFPE
Software de E/SSoftware de E/S
Organização em camadas:Proc. usuário
sw indep. disp.
driver disp.
tratam. interr.
comandos simbólicosnomes simbólicosconv. bloco lógico em físicoalocação e liberação de esp.
gerencia execução de comandostradução endereçosreordena pedidoscomunicação com controladortratamento de erros
GRECO
DEPARTAMENTODE INFORMÁTICA
UFPE
I/O programado I/O dirigido por interrupção Acesso Direto à Memória (DMA)
Técnicas para entrada de um Técnicas para entrada de um bloco de dadosbloco de dados
GRECO
DEPARTAMENTODE INFORMÁTICA
UFPE
InterrupçãoInterrupção
GRECO
DEPARTAMENTODE INFORMÁTICA
UFPE
Como funciona um computador?Como funciona um computador?
Busca a próximainstrução
Busca a próximainstrução
Executa a instrução
Executa a instrução
Início
Término
Há interrupção?Há interrupção?
Salta p/ rotinade interrupção
Salta p/ rotinade interrupção
SimSim
NãoNão
GRECO
DEPARTAMENTODE INFORMÁTICA
UFPE
Processo de Interrupção simplesProcesso de Interrupção simples
Dispositivo Controladorou outro dispositivo do sistema pede interrupção
Processador termina aexecução da instruçãoem andamento
Processador sinalizareconhecimento de interrupção
Processador salva PSWe PC na pilha de controle (Push)
Processador carrega novo valor do PC baseado na interrupção
Salve resto da Informaçãodo estado do proesso
Processa Interrupção
Restaura Informação doestado do processo
Restaura PSW e PC do programa pri ncipal ( em execução) antes dainterrupção
Hardware
Software
GRECO
DEPARTAMENTODE INFORMÁTICA
UFPE
Interrupção - Ajuste e execuçãoInterrupção - Ajuste e execução
Y N+1 Contador de programa(PC)
Registradores
Start
Return
T T+M
Ponteiro da pliha(Stack Pointer)
Controle dapilha
Programa dousuário
Rotina de serviçode interrupção
T
T+M
NN+1
Y
Y+L
GRECO
DEPARTAMENTODE INFORMÁTICA
UFPE
Interrupção - Retorno ao Interrupção - Retorno ao programa principalprograma principal
N+1 Y+L Contador de programa(PC)
Registradores
Start
Return
T +M T
Ponteiro da pliha(Stack Pointer)
Controle dapilha
Programa dousuário
Rotina de serviçode interrupção
T
T+MN
N+1
Y
Y+LN+1
GRECO
DEPARTAMENTODE INFORMÁTICA
UFPE
Tratamento de InterrupçõesTratamento de Interrupções
Como determinar qual dispositivo gerou a interrupção ?
• Várias linhas de interrupção
• Software Poll
• Daisy Chain (hardware poll, vetorizada)
• Arbitragem de interrupção (vetorizada)
Controlador de Interrupção (ex. 8259A)
– Prioridades fixas– Prioridades rotativas
GRECO
DEPARTAMENTODE INFORMÁTICA
UFPE
Tratamento de InterrupçõesTratamento de Interrupções
Sinais de controle:– IRQx - Interrupt request x– INT (Interrupt) - Houve interrupção– INTA (Int. Acknowledge) - Interrupção recebida– RD (Read) - Leitura– WR (Write) - Escrita– CS (Chip select) - Seleção do chip do controlador
INT
INTA
RD
WR
CS
DADOS
CPUControlador de Interrupções
IRQ0IRQ1IRQ2IRQ3IRQ4IRQ5IRQ6IRQ7.........
GRECO
DEPARTAMENTODE INFORMÁTICA
UFPE
Tratamento de InterrupçõesTratamento de Interrupções Mecanismo de Interrupção
– Dispositivo I/O ativa IRQx
– 8259A ativa INT para a CPU
– CPU ativa INTA pedindo identificação do dispositivo que gerou a interrupção
– 8259A envia dado (vetor de interrupção identificando o dispositivo. Se houver mais de um, 8259A realiza arbitragem.
– CPU usa o vetor para executar a rotina apropriada a aquele dispositivo.
O sistema operacional deve estabelecer níveis de prioridade para os dispositivos.
GRECO
DEPARTAMENTODE INFORMÁTICA
UFPE
I/O programado• A CPU executa programa para controlar a operação de I/O
(verifica status do dispositivo, envia/recebe dados).
• CPU espera até o final da operação de I/O.
I/O dirigido por interrupção• CPU requisita um comando do dispositivo de I/O
• CPU continua a executar outras operações
• CPU é interrompida pelo módulo de I/O e ocorre transferência de dados.
Acesso Direto à Memória (DMA)• O módulo de I/O e a memória trocam informações sem o
envolvimento da CPU. • Um controlador especial com acesso direto a memória
controla a troca de dados com o dispositivo de I/O
Técnicas para entrada de um Técnicas para entrada de um bloco de dadosbloco de dados
GRECO
DEPARTAMENTODE INFORMÁTICA
UFPE
Secretária, por favor escreva o contratoagora para que eu possa assiná-lo; estou esperando, ok?
Pois não Sr. um momento
Contrato pronto, estou enviando Ok, Obrigado
Programa sem interrupção
Secretária, por favor escreva o contratoagora, quando estiver pronto me avise, ok?Pois não Sr.
Contrato pronto, posso enviá-lo?Um momento, estou terminado de escrever um ofício. ... agora pode enviar o contrato, obrigado. Após receber o contrato, o chefe continua fazendo as outras atividades......
Programa com interrupção
Preciso envinhar os contratos que estáo sobre a mesa do chefe para o correio
Boy por favor apanhe os contratos que estão na pasta sobre a mesa do chefe para mim. Por favor não incomode o chefe, ok?
Obrigada
CorreioCorreio
Acesso Direto à Memória
Fluxo de programasFluxo de programas
CPUCPU
E/SE/S
BUSBUS
GRECO
DEPARTAMENTODE INFORMÁTICA
UFPE
Técnicas de transferência de dadosTécnicas de transferência de dadosE/S programada
Comando de leitura
para módulo de E/S
Comando de leitura
para módulo de E/S
Ler dado de E/SEscreve memória
Ler dado de E/SEscreve memória
Statusde E/S
Statusde E/S
E/S dirigida porinterrupção
Interrupção
E/S --> CPU CPU --> Mem.
CPU --> E/S
Outras tarefas
Volta ao que estava fazendo
Comando de leitura
para módulo de E/S
Comando de leitura
para módulo de E/S
OK
OK
Statusde E/S
Statusde E/S
Ler statusde E/S
Ler statusde E/S
Ler dado de E/SEscreve memória
Ler dado de E/SEscreve memória
OK
OK
GRECO
DEPARTAMENTODE INFORMÁTICA
UFPE
Técnicas de transferência de dadosTécnicas de transferência de dados
Parâmetros para DMA• End. memória• End. dispositivo• Tamanho bloco
Comando de leitura
de E/S paracontrolador
de DMA
Comando de leitura
de E/S paracontrolador
de DMA
Statusde E/S
Statusde E/S
Interrupção
Outras tarefas
Volta ao que estava fazendo
CPU --> DMA
DMA --> CPU
Control. de DMA transfere dados entre memória e módulo de E/S
Control. de DMA transfere dados entre memória e módulo de E/S
GRECO
DEPARTAMENTODE INFORMÁTICA
UFPE
Mapeamento de I/O:Mapeamento de I/O:Isolado e em MemóriaIsolado e em Memória
Controlador de E/S
• Linhas de endereços• Linhas de dados• Linhas de Controle
Mreq / I/O
Barramento Isolado tem sinal especial (Mreq / I/O) que identifica o tipo de endereço presente no barramento
• Permite o uso de instruções especiais para dispositivos de I/OPermite o uso de instruções especiais para dispositivos de I/O• Para o mesmo núm. de bits de endereço => dobro de I/O + MemóriaPara o mesmo núm. de bits de endereço => dobro de I/O + Memória• Requer um sinal extra e, consequentemente, hardware extra na CPURequer um sinal extra e, consequentemente, hardware extra na CPU
Memória
GRECO
DEPARTAMENTODE INFORMÁTICA
UFPE
DMA - Acesso Direto à memóriaDMA - Acesso Direto à memória
Contador de dados
Registradorde dados
Registrador de endereços
Lógica de Controle
Linhasde dados
Linhas deendereço
DMA REQDMA ACKINTRReadWrite
O módulo de I/O e a memória principal trocam dados diretamente sem o envol- vimento da CPU.
GRECO
DEPARTAMENTODE INFORMÁTICA
UFPE
DMA e pontos de acesso durante DMA e pontos de acesso durante ciclos de instruçãociclos de instrução
Ciclo doprocessador
Ciclo doprocessador
Ciclo doprocessador
Ciclo doprocessador
Ciclo doprocessador
Ciclo doprocessador
Apanha Decodifica Apanha Executa Armazena Processainstrução Instrução Operando Instrução resultado Interrupção(Fetch (Fetch Instruction) Operand)
Ciclo de Instrução
Pontos de acessode DMA
Cycle StealingCycle Stealing
Acesso deInterrupção
GRECO
DEPARTAMENTODE INFORMÁTICA
UFPE
Diferentes configurações de DMADiferentes configurações de DMA
CPU Módulo I/O I/O Memória DMA
1. Barramento simples, DMA simples
CPU Módulo Módulo Memória DMA DMA
I/O I/O I/O
2. Barramento simples, DMA-I/O Integrados
CPU Módulo Memória DMA
I/O I/O I/O
3. Barramento de I/O
GRECO
DEPARTAMENTODE INFORMÁTICA
UFPE
Dispositivos de E/S - exemplosDispositivos de E/S - exemplos
Impressoras PCMIA Terminais
GRECO
DEPARTAMENTODE INFORMÁTICA
UFPE
ImpressorasImpressoras
As impressoras são dispositivos de saída de dados. Podem ser classificá-las sob vários aspectos. Por interface de comunicação:
– Impressora com interface serial-RS232– Twisted pair– Impressora paralela centronics, bicentronics
Quanto a tecnologia de impressão:– matriz de pontos – linha– jato de tinta– laser
GRECO
DEPARTAMENTODE INFORMÁTICA
UFPE
ImpressorasImpressoras Outros aspectos importantes:
– velocidade de impressão (ppm) – resolução da impressora (dpi)– Preto/branco ou colorida
Com o advento de sistemas distribuídos e de novos sistemas operacioniais para rede deve-se observar também a disponibilidade de impressoras que:
– aceitem protocolo de rede como TCP/IP, Windows NT, Windows 95, protocolo de transferência de arquivos como FTP, etc.
– aceitem arquivos Postscript, texto, etc.
GRECO
DEPARTAMENTODE INFORMÁTICA
UFPE
PCMCIAPCMCIA PCMCIA - Personal Computer Memory Card
International• Conhecido como PC card• Usado em laptops• Arquitetura Plug-and-Pla
Aplicações• LAN (Ethernet - 10Mbits/s)• Hard disk• Fax/Modem
GRECO
DEPARTAMENTODE INFORMÁTICA
UFPE
MonitorMonitor Monitor
• Monitores requerem controladores de vídeo (alta banda passante) que se conectam a barramentos como:
– Barramento PCI
– Barramento VESA Local bus
Características técnicas do adaptador do display
• Resolução gráfica - número de pontos na tela (dots)
– 640x480 (VGA)
– 800x600 (SVGA)
– 1024x768
– 1280x1024, 1600x1200
GRECO
DEPARTAMENTODE INFORMÁTICA
UFPE
Dispositivos de RedeDispositivos de RedeMainframeVMS
Rede localUnix
Rede localwindows NT
Estações de trabalho emulamdo terminal VT-100 conectado remotamente ao Maniframe
Micro emulando terminal X
ETHERNET
GRECO
DEPARTAMENTODE INFORMÁTICA
UFPE
TerminaisTerminais
Permitem uma interação direta (on-line) com um computador remoto através de dispositivos auxiliares de entrada e saída como teclado, mouse, monitor, etc.
Não executam processamento local, a não ser o básico (vídeo, teclado, mouse)
Modelos mais comuns:
VT-100, 3270, Terminal X
Top Related