greco departamento de informÁtica ufpe dispositivos de e/s (i/o)

38
GRECO DEPARTAMENTO DE INFORMÁTICA UFPE Dispositivos de E/S (I/O) Dispositivos de E/S (I/O)

Upload: internet

Post on 21-Apr-2015

107 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: GRECO DEPARTAMENTO DE INFORMÁTICA UFPE Dispositivos de E/S (I/O)

GRECO

DEPARTAMENTODE INFORMÁTICA

UFPE

Dispositivos de E/S (I/O)Dispositivos de E/S (I/O)

Page 2: GRECO DEPARTAMENTO DE INFORMÁTICA UFPE 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

Page 3: GRECO DEPARTAMENTO DE INFORMÁTICA UFPE Dispositivos de E/S (I/O)

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

Page 4: GRECO DEPARTAMENTO DE INFORMÁTICA UFPE Dispositivos de E/S (I/O)

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

Page 5: GRECO DEPARTAMENTO DE INFORMÁTICA UFPE Dispositivos de E/S (I/O)

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

Page 6: GRECO DEPARTAMENTO DE INFORMÁTICA UFPE Dispositivos de E/S (I/O)

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

Page 7: GRECO DEPARTAMENTO DE INFORMÁTICA UFPE Dispositivos de E/S (I/O)

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

Page 8: GRECO DEPARTAMENTO DE INFORMÁTICA UFPE Dispositivos de E/S (I/O)

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

Page 9: GRECO DEPARTAMENTO DE INFORMÁTICA UFPE Dispositivos de E/S (I/O)

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

Page 10: GRECO DEPARTAMENTO DE INFORMÁTICA UFPE Dispositivos de E/S (I/O)

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

Page 11: GRECO DEPARTAMENTO DE INFORMÁTICA UFPE Dispositivos de E/S (I/O)

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

Page 12: GRECO DEPARTAMENTO DE INFORMÁTICA UFPE Dispositivos de E/S (I/O)

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

Page 13: GRECO DEPARTAMENTO DE INFORMÁTICA UFPE Dispositivos de E/S (I/O)

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

Page 14: GRECO DEPARTAMENTO DE INFORMÁTICA UFPE Dispositivos de E/S (I/O)

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

Page 15: GRECO DEPARTAMENTO DE INFORMÁTICA UFPE Dispositivos de E/S (I/O)

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

Page 16: GRECO DEPARTAMENTO DE INFORMÁTICA UFPE Dispositivos de E/S (I/O)

GRECO

DEPARTAMENTODE INFORMÁTICA

UFPE

InterrupçãoInterrupção

Page 17: GRECO DEPARTAMENTO DE INFORMÁTICA UFPE Dispositivos de E/S (I/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

Page 18: GRECO DEPARTAMENTO DE INFORMÁTICA UFPE Dispositivos de E/S (I/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

Page 19: GRECO DEPARTAMENTO DE INFORMÁTICA UFPE Dispositivos de E/S (I/O)

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

Page 20: GRECO DEPARTAMENTO DE INFORMÁTICA UFPE Dispositivos de E/S (I/O)

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

Page 21: GRECO DEPARTAMENTO DE INFORMÁTICA UFPE Dispositivos de E/S (I/O)

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

Page 22: GRECO DEPARTAMENTO DE INFORMÁTICA UFPE Dispositivos de E/S (I/O)

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.........

Page 23: GRECO DEPARTAMENTO DE INFORMÁTICA UFPE Dispositivos de E/S (I/O)

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.

Page 24: GRECO DEPARTAMENTO DE INFORMÁTICA UFPE Dispositivos de E/S (I/O)

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

Page 25: GRECO DEPARTAMENTO DE INFORMÁTICA UFPE Dispositivos de E/S (I/O)

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

Page 26: GRECO DEPARTAMENTO DE INFORMÁTICA UFPE Dispositivos de E/S (I/O)

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

Page 27: GRECO DEPARTAMENTO DE INFORMÁTICA UFPE Dispositivos de E/S (I/O)

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

Page 28: GRECO DEPARTAMENTO DE INFORMÁTICA UFPE Dispositivos de E/S (I/O)

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

Page 29: GRECO DEPARTAMENTO DE INFORMÁTICA UFPE Dispositivos de E/S (I/O)

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.

Page 30: GRECO DEPARTAMENTO DE INFORMÁTICA UFPE Dispositivos de E/S (I/O)

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

Page 31: GRECO DEPARTAMENTO DE INFORMÁTICA UFPE Dispositivos de E/S (I/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

Page 32: GRECO DEPARTAMENTO DE INFORMÁTICA UFPE Dispositivos de E/S (I/O)

GRECO

DEPARTAMENTODE INFORMÁTICA

UFPE

Dispositivos de E/S - exemplosDispositivos de E/S - exemplos

Impressoras PCMIA Terminais

Page 33: GRECO DEPARTAMENTO DE INFORMÁTICA UFPE Dispositivos de E/S (I/O)

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

Page 34: GRECO DEPARTAMENTO DE INFORMÁTICA UFPE Dispositivos de E/S (I/O)

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.

Page 35: GRECO DEPARTAMENTO DE INFORMÁTICA UFPE Dispositivos de E/S (I/O)

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

Page 36: GRECO DEPARTAMENTO DE INFORMÁTICA UFPE Dispositivos de E/S (I/O)

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

Page 37: GRECO DEPARTAMENTO DE INFORMÁTICA UFPE Dispositivos de E/S (I/O)

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

Page 38: GRECO DEPARTAMENTO DE INFORMÁTICA UFPE Dispositivos de E/S (I/O)

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