• Nenhum resultado encontrado

Periféricos de computadores

N/A
N/A
Protected

Academic year: 2021

Share "Periféricos de computadores"

Copied!
36
0
0

Texto

(1)

Periféricos de computadores

João Canas Ferreira

Arquitectura de Computadores

FEUP/LEIC

Contém figuras de “Computer Organization and Design” (cap. 8), D. Patterson & J. Hennessey, 3a . ed., Elsevier

Tópicos

1 Periféricos: aspectos gerais

2 Discos magnéticos

3 Comunicação entre CPU e periféricos

4 Desempenho de subsistemas de E/S

(2)

1 Periféricos: aspectos gerais

2 Discos magnéticos

3 Comunicação entre CPU e periféricos

4 Desempenho de subsistemas de E/S

ArqComp: Periféricos de computadores 3/37 2007-05-19

Notas:

(3)

Subsistema de entrada/saída de dados

+ Todos os componentes usados para transferir dados de/para o subsistema “CPU + Memória” são designados como periféricos.

+ Periféricos típicos são:

1. teclado, rato, monitor;

2. discos magnéticos, discos ópticos;

3. dispositivos de ligação a redes;

4. impressoras, scanners, etc.

+ Alguns critérios de qualidade:

1. fiabilidade: medida do tempo de funcionamente até falhar;

2. disponibilidade: medida do tempo em que o sistema está operacional;

3. expansibilidade.

+ Desempenho depende de muitos factores: características do dispositivo, sistema operativo, método de comunicação com o resto do sistema.

ArqComp: Periféricos de computadores 4/37 2007-05-19

Notas:

(4)

Classificação de periféricos

+ A diversidade de periféricos é enorme. Uma classificação simples utiliza os seguintes três critérios:

+ Comportamento:

1. Entrada (leitura única);

2. Saída (escrita única, sem leitura);

3. Armazenamento (leitura e escrita, geralmente mais que uma vez).

+ Tipo de cliente/fornecedor: Humano ou máquina.

+ Taxa de dados: taxa máxima de transferência de dados para

CPU ou memória.

+ Exemplo: Teclado

É dispositivo de entrada, É usado por humano

É taxa máxima de dados de 10 bytes/segundo.

ArqComp: Periféricos de computadores 5/37 2007-05-19

Notas:

(5)

CPU e periféricos: exemplo

ArqComp: Periféricos de computadores 6/37 2007-05-19

Notas:

(6)

Critérios de desempenho

+ Os critérios de desempenho dependem muito da aplicação.

+ Exemplo: “largura de banda” de E/S (medida de débito) pode ser considerada de duas maneiras diferentes:

É Que quantidade de dados passa pelo sistema por unidade de tempo? (unidade: B/s)

É Quantas operações de E/S podem ser executadas por unidade de tempo?

Aplicações de multimédia, com transferências de ficheiros longos, estão no primeiro caso.

Recepção de reservas (transacções pequenas) está no 2o caso.

+ Noutras aplicações, interessa o “tempo de resposta” (medida de latência, que pode ser dependente da largura de banda da comunicação). Exemplo: computador desktop.

+ Existem aplicações em que interessam ambos os parâmetros: Multibanco, servidores Web.

ArqComp: Periféricos de computadores 7/37 2007-05-19

Notas:

(7)

1 Periféricos: aspectos gerais

2 Discos magnéticos

3 Comunicação entre CPU e periféricos

4 Desempenho de subsistemas de E/S

ArqComp: Periféricos de computadores 8/37 2007-05-19

Notas:

(8)

Disco magnético: vista interna

ArqComp: Periféricos de computadores 9/37 2007-05-19

Notas:

(9)

Discos magnéticos variados

ArqComp: Periféricos de computadores 10/37 2007-05-19

Notas:

(10)

Características de um disco magnético

+ Sistema de armazenamento não-volátil.

+ Conjunto de discos (de metal) rotativos com eixo comum: 5400–15000 RPM.

+ Cada disco tem 2 superfícies de gravação cobertas com material magnético.

+ Cada superfície está dividida em círculos concêntricos: as pistas.

+ Cada pista está dividida em sectores (tradicionalmente de 512 bytes, mais recentemente 4096 bytes).

+ Todas as pistas que estão simultaneamente sob as cabeças de leitura constituem um “cilindro” (vertical).

+ Em cada pista, a informação está organizada em: no de sector, espaço livre, informação do sector, espaço livre, no de sector, espaço livre, etc.

+ Actualmente, o número de sectores varia com a posição da pista: pistas exteriores têm mais sectores.

+ A densidade (bits por unidade de área) tem vindo a aumentar: 100% ao ano entre 1997 e 2001; 40% ao ano actualmente.

+ Em 2001: 20× 109 bits/polˆ2 (comercial), 60× 109 bits/polˆ2 (lab);

+ A escrita ou leitura são efectuadas por cabeças de escrita/leitura ligadas a um braço. Todas as cabeças de leitura se movimentam simultaneamente: todas estão sobre o mesmo sector da mesma pista (mas de superfícies diferentes).

+ A capacidade é indicada em potências de 10: 1 MB = 106 bytes.

ArqComp: Periféricos de computadores 11/37 2007-05-19

Notas:

(11)

Constituição de um disco magnético

ArqComp: Periféricos de computadores 12/37 2007-05-19

Notas:

(12)

Tempos de operação

+ Tempo de acesso—soma dos três tempos mencionados a

seguir;

+ Tempo de busca—tempo que demora a pôr o braço no cilindro

pretendido. Fabricantes especificam os tempos É máximo,

É mínimo,

É médio (soma dos tempos de todas as buscas possíveis/no de buscas possíveis).

+ Latência de rotação—tempo que o sector pretendido demora a

“surgir” debaixo do braço após cabeça chegar ao cilindro: 5.6 ms–2.0 ms.

+ Tempo de transferência—tempo que demora a transferir um

sector já posicionado sob a cabeça: 30–80 MB/s (SATA: > 125 MB/s)

+ Alguns controladores de disco têm uma cache: 320 MB/s.

+ Tempo de transferência reduz-se 40% ao ano;

+ Tempo de acesso reduz-se 10% ao ano.

ArqComp: Periféricos de computadores 13/37 2007-05-19

Notas:

(13)

Proximidade dos acessos

O princípio da proximidade também vale para acessos a disco: na prática, o tempo de busca médio é muito inferior ao especificado pelos fabricantes.

Gráficos mostram a percentagem de acessos com buscas de comprimento entre os dois valores do eixo dos YY.

Exemplo (gráfico da esquerda): 8% dos acessos envolveu uma distância de busca entre 16 e 30 cilindros.

Linha 0 é um caso especial: acessos no mesmo cilindro.

ArqComp: Periféricos de computadores 14/37 2007-05-19

Notas:

(14)

Cálculo do tempo de leitura

Objectivo: determinar o tempo médio para ler/escrever um sector de 512 bytes de um disco de 10000 RPM. Tempo médio de busca é de 6 ms, taxa de transferência de 50 MB/s. O controlador tem um

overhead de 0.2 ms.

É Tempo médio de busca: 6 ms

É Latência de rotação (em segundos): 0.5

10000/ 60 =0.003 É Tempo de transferência (em segundos):

0.5 KB 50 MB =

0.5

50× 103 = 0.00001

É Controlador acrescenta sempre 0.2 ms por transferência. É Total = 6.0 + 3.0 + 0.01 + 0.2 = 9.2 ms

É Se o tempo médio de busca for apenas 25% do especificado: Total = 1.5 + 3.0 + 0.01 + 0.2 = 4.7 ms

ArqComp: Periféricos de computadores 15/37 2007-05-19

Notas:

(15)

Disponibilidade e fiabilidade

+ Medida de fiabilidade: MTTF (mean time to failure), tempo

médio até falhar. Exemplo: o mesmo fabricante vende modelos com MTTF: 1200000 h, 600000 h e 330000 h (a 25 oC).

+ Medida de interrupção de serviço: MTTR (mean time to repair), tempo médio de reparação.

+ Tempo médio entre avarias MTBF(mean time between failures): MTTF + MTTR. + Medida de disponibilidade: disponibilidade = MTTF MTBF = MTTF (MTTF + MTTR) + Como aumentar MTTF ?

Aumentar a tolerância a falhas através do uso controlado de redundância. Por exemplo, fazer acessos simultâneos a dois discos, de forma a que cada um seja sempre uma cópia do outro.

RAID: Redundant Array of Inexpensive Disks

ArqComp: Periféricos de computadores 16/37 2007-05-19

Notas:

(16)

1 Periféricos: aspectos gerais

2 Discos magnéticos

3 Comunicação entre CPU e periféricos

4 Desempenho de subsistemas de E/S

ArqComp: Periféricos de computadores 17/37 2007-05-19

Notas:

(17)

Barramentos (1/2)

+ Infra-estrutura de comunicação: barramento.

Meio de comunicação partilhado que usa um conjunto de linhas comuns para ligar múltiplos subsistemas.

+ Vantagens:

É Versatilidade (é fácil adicionar mais subsistemas) É Baixo custo

+ Desvantagens:

É Possível estrangulamento da comunicação É Projecto delicado devido a limitações físicas.

+ Barramentos são compostos por linhas de dados e linhas de controlo.

+ Linhas de controlo: são usadas para efectuar pedidos e para especificar o tipo de dados.

+ Linhas de dados: transmitir dados, endereços e parâmetros de comandos complexos.

ArqComp: Periféricos de computadores 18/37 2007-05-19

Notas:

(18)

Barramentos (2/2)

+ Transacção de barramento: sequência de operações do barramento iniciada por um pedido. Pode envolver muitas operações individuais.

+ Barramentos podem ser dividos em:

É barramentos processador-memória: curtos, de muito alta

velocidade, adaptados ao susbsistema de memória;

É barramentos de E/S: mais compridos, vários tipos de dispositivos

com taxas de transferência muito diferentes. Geralmente, não ligam directamente ao CPU.

+ Um barramento síncrono inclui uma linha de relógio e usa um protocolo fixo de comunicação (com tempos relativos ao sinal de relógio do barramento): protocolos tendem a ser rápidos e simples.

Desvantagens: todos os dispositivos devem operar à mesma velocidade e os barramentos não podem ser compridos (degradação do sinal de relógio). Muito usados em ligações processador-memória.

+ Um barramentoassíncrono não tem um sinal de relógio comum. Adpata-se naturalmente a dispositivos de diferentes velocidades.

Desvantagens: A transmissão de informação deve ser coordenada de forma mais complexa (protocolo de “handshaking”).

+ Tendência: passar de barramentos com muitas linhas em paralelo para ligações ponto-a-ponto com poucas linhas e dispositivos ligados por comutadores.

ArqComp: Periféricos de computadores 19/37 2007-05-19

Notas:

(19)

Exemplos de barramentos de E/S

+ Dois barramentos normalizados muito usados.

+ Baseados em comunicação ponto-a-ponto (barramentos “série”).

ArqComp: Periféricos de computadores 20/37 2007-05-19

Notas:

(20)

Protocolo de comunicação: “handshaking” (1/2)

+ ReadReq: linha controlada pelo dispositivo de E/S.

+ DataRdy: linhas controladas pela memória.

+ Data e Ack : linhas partilhadas,

ArqComp: Periféricos de computadores 21/37 2007-05-19

Notas:

(21)

Protocolo de comunicação: “handshaking” (2/2)

Exemplo de uma transacção assíncrona:

Transferência de posição de memória para dispositivo de E/S:

1. Memória detecta que sinal ReadReq está a “1”: obtém endereço da linha de dados e activa Ack para indicar que foi “activada”.

2. Dispositivo de E/S detecta Ack e liberta as linhas de dados e ReadReq.

3. Memória detecta ReadReq a “0” e coloca Ack a “0” também.

4. Quando a memória tem os dados prontos a transferir, coloca a informação nas linhas de dados e coloca DataRdy a “1”.

5. Dipositivo E/S detecta DataRdy a “1”, lê dados do barramento, após o que leva Ack a “1”.

6. Memória detecta Ack a “1”, pelo que baixa DataRdy e liberta as linhas de dados.

7. Dispositivo de E/S detecta que DataRdy está a “0”, e coloca Ack a “0”. Pode começar uma nova transacção.

ArqComp: Periféricos de computadores 22/37 2007-05-19

Notas:

(22)

Sistema baseado num Pentium 4

ArqComp: Periféricos de computadores 23/37 2007-05-19

Notas:

(23)

Características de controladores E/S

ArqComp: Periféricos de computadores 24/37 2007-05-19

Notas:

(24)

Tarefas do sistema operativo

+ Características relavantes do sistema de E/S: É Vários programas partilham o sistema de E/S.

É Sistema de E/S usam (muitas vezes) interrupções para comunicar informação sobre as operações de E/S, levando o CPU a entrar em modo supervisor.

É O controlo de baixo nível dos dispositivos de E/S é muito complexo porque implica a gestão de muitos eventos simultâneos e porque os requisitos dos dispositivos são muito minuciosos.

+ Tarefas a executar pelo S. O.:

É Garantir que cada processo apenas acede aos dispositivos (ou às partes dos dispositivos) a que tem direito.

É Fornecer abstracções que permitam isolar o acesso aos dispositivos dos detalhes de cada um deles.

É Atender as interrupções geradas pelos dispositivos de E/S. É Garantir acesso equitativo e eficiente aos dispositivos.

ArqComp: Periféricos de computadores 25/37 2007-05-19

Notas:

(25)

Comandos de E/S

+ Para executar uma transferência de E/S, o CPU deve seleccionar o dispositivo e transmitir um ou mais comandos.

+ Método 1: dispositivos mapeados em memória

É Uma secção do espaço de endereçamento é associada a um

dispositivo: leituras e escritas para esses endereços são interpretadas como comandos.

O sistema de memória ignora os acessos, mas o controlador do dispositivo detecta-os e actua em concordância.

É O acesso aos dispositivos é controlado: os dispositivos apenas surgem

no espaço de endereçamento do sistema operativo (e não dos processos individuais).

É Os dispositivos usam os endereços para determinar o tipo de comando. É A família MIPS usa esta abordagem. (E o nanoMIPS também. . . )

+ Método 2: instruções especiais de I/O

É Alguns processadores têm instruções especiais de E/S que permitem

especificar o número do dispositivo e os dados a enviar/receber.

É A arquitectura IA-32 da Intel (386, Pentium, etc.) usa esta abordagem.

ArqComp: Periféricos de computadores 26/37 2007-05-19

Notas:

(26)

Comunicação com o processador

Existem duas abordagens à estratégia de comunicação entre CPU e periféricos: Varrimento (polling)

+ O CPU verifica periodicamente o estado do periférico.

+ O dispositivo simplesmente coloca a informação apropriada num registo, que é acedido pelo CPU.

+ Vantagem: simplicidade.

+ Desvantagem: pode desperdiçar tempo de CPU significativo. O processador pode aceder muitas vezes ao dispositivo, apenas para constatar que este ainda não está pronto.

Interrupções

+ Quando o dispositivo termina uma tarefa, envia uma interrupção ao CPU (activando uma linha pré-definida).

+ As interrupções são assíncronas em relação à execução de instruções: uma interrupção não está associada à execução de uma instrução e não implica o protelamento/suspensão da execução da instrução.

O CPU apenas necessita de verificar se existe uma interrupção pendente quando inicia a execução de uma nova instrução.

+ Uma interrupção pode vir acompanhada de informação adicional (por exemplo, a identidade do dispostivo que a gerou ou a sua prioridade).

ArqComp: Periféricos de computadores 27/37 2007-05-19

Notas:

(27)

Tratamento de interrupções

... ... sw $fp, 24($sp) addu $fp, $sp, 32 move $t0, $a0 sw $t0, 20($sp) sub $a0, $t0, 1 jal rotina move $t1, $v0 lw $t0, 20($sp) sw $t1, 16($sp) sub $a0, $t0, 2 jal rotina move $t2, $v0 lw $t1, 16($sp) add $v0, $t1, $t2 ... # tratmento da interrupção .text 0x80000080 mfc0 $k0, $13 mfc0 $k1, $14 andi $k0, $k0, 0x003c ... jr $k1 1. execução “normal” Periférico 2. interrupção CPU 3. atendimento da interrupção

4. retomar a execução “normal”

INTR ACK (interrupção atendida)

CPU

periférico

ArqComp: Periféricos de computadores 28/37 2007-05-19

Notas:

(28)

Transferências memória

↔ dispositivos E/S: DMA

+ A transferência de dados entre um dispositivo de E/S e memória ocorre tipicamente em duas etapas:

1. transferência do dispositivo de E/S para o CPU;

2. transferência do CPU para memória.

+ Em transferências por DMA (Direct Memory Access), os dados são transferidos directamente do dispositivi para a memória.

+ DMA é realizado por um controlador dedicado, que pode trabalhar de maneira independente do processador central.

1. CPU prepara a transferência DMA: identificação do dispositivo, operação a efectuar, endereço de memória inicial, no de bytes a transferir.

2. Controlador de DMA efectua a transferência, enquanto CPU prossegue com as respectivas actividades.

3. Após terminar a transferência, o controlador de DMA envia uma interrupção ao CPU.

ArqComp: Periféricos de computadores 29/37 2007-05-19

Notas:

(29)

Sistema com DMA

CPU endereços dados Memória RAM Controlador DMA

pedido de controlo do barramento autorização Periférico A PeriféricoB activar periféricoA activar periférico B pedido de transferência de A pedido de transferência de B IO_read_or_write MEM_read_or_write fim de operação (interrupção)

ArqComp: Periféricos de computadores 30/37 2007-05-19

Notas:

(30)

1 Periféricos: aspectos gerais

2 Discos magnéticos

3 Comunicação entre CPU e periféricos

4 Desempenho de subsistemas de E/S

ArqComp: Periféricos de computadores 31/37 2007-05-19

Notas:

(31)

Impacto de E/S sobre o desempenho

Um programa demora 100 s a terminar. Desse tempo, 90 s são de tempo de CPU. Assuma que o desempenho de CPU melhora 50% por ano durante cinco anos, enquanto o sistema de E/S permanece igual. Ao fim de cinco anos, quanto mais rápido é o programa?

É Tempo de E/S = 100 - 90 = 10 s

É Tabela para cinco anos (valores arredondado à unidade):

Ano CPU (s) E/S (s) Total (s) % E/S

0 90 10 100 10 1 90/1.5 = 60 10 70 14 2 60/1.5 = 40 10 50 20 3 40/1.5 = 27 10 37 27 4 27/1.5 = 18 10 28 36 5 18/1.5 = 12 10 22 45

É Melhoria de desempenho do CPU: 90/12 = 7.5 É Melhoria de desempenho total: 100/22 = 4.5

ArqComp: Periféricos de computadores 32/37 2007-05-19

Notas:

(32)

Abordagem ao projecto de um sistema E/S

+ Tarefa típica: projectar sistema de E/S de forma a respeitar restrições de “largura de banda” para uma certa carga (conjunto de programas a executar).

+ Alternativa: dado um sistema de E/S parcialmente configurado, equilibrar o sistema de forma a obter a maior largura de banda possível.

+ Abordagem geral:

1. Determinar o elo mais fraco no sistema de E/S.

2. Configurar este componente para ter o desempenho pretendido (taxa de transmissão).

3. Determinar os requisitos do resto do sistema e configurar os demais elementos para permitirem obter a taxa de transmissão determinada anteriormente.

ArqComp: Periféricos de computadores 33/37 2007-05-19

Notas:

(33)

Projecto de um sistema de E/S: especificação

(Trata-de de um exemplo muito simplificado. Muitas vezes apenas simulação permite obter resultados suficientemente rigorosos.) Especificação do sistema:

1. CPU capaz de executar 3× 109 instruções/s. Em média, o S. O. dispende 100000 instruções por operação de E/S.

2. Barramento de acesso a memória com uma taxa de transferência de 1000 MB/s.

3. Controladores de disco SCSI Ultra320 com uma taxa de 320 MB/s e capazes de usar até 7 discos.

4. Discos magnéticos com taxas de transferência de 75 MB/s e um tempo médio conjunto de busca e latência rotacional de 6 ms.

A carga (para o sistema de E/S) consiste em leituras de 64 KB (leitura sequencial de sectores de uma mesma pista). Os programas do utilizador gastam 200000 instruções por cada operação de E/S.

Objectivo: Determinar a maior taxa sustentável de E/S, bem como o número de discos e de controladores necessários.

(Assumir que nunca existem conflitos nos acessos a disco.)

ArqComp: Periféricos de computadores 34/37 2007-05-19

Notas:

(34)

Projecto de um sistema de E/S: cálculos (I)

Os componentes fixos são o CPU e memória.

Começar por determinar as restrições impostas por estes componentes.

É Taxa máxima de E/S do CPU:

Taxa de execução de instruções No de instruções por E/S =

3× 109

(200+100)× 103 =10000

E/S s

É Barramento de memória (transferências de 64 KB):

Largura de banda Bytes por E/S =

1000× 106

64× 103 =15625

E/S s

O CPU é o limitador do desempenho. O sistema deve ser configurado para uma taxa de 10000 operações de E/S por segundo.

ArqComp: Periféricos de computadores 35/37 2007-05-19

Notas:

(35)

Projecto de um sistema de E/S: cálculos (II)

Determinar os restantes requisitos do sistema. É Tempo gasto por cada disco numa operação de E/S:

Tempo por E/S=6+ 64 KB

75 MB/s =6.9 ms

É Cada disco pode realizar:

No operações de E/S= 1000

6.9 ≈ 146 E/S

s

É Para saturar o CPU são necessárias 10000 operações E/S por segundo.

Portanto, o número de discos é:

No de discos= 10000

146 ≈ 69 discos

É A taxa de transmissão de um disco é:

Tamanho da transferência Tempo de transferência =

64 KB

6.9 ms ≈ 9.56 MB/s

É 7 discos necessitam de 7× 9.56=66.9 MB/s, o que é menor que 320. Logo,

o controlador não é saturado pelos 7 discos.

É O sistema necessitará deb69/7c=10 controladores.

ArqComp: Periféricos de computadores 36/37 2007-05-19

Notas:

(36)

Elementos de consulta

+ [Patterson & Hennessy]:

É Secções 8.1, 8.2 (excepto parte sobre RAID [pág. 575–579 da ed. inglesa]), 8.4–8.6

+ [Delgado & Ribeiro]:

É Secções 6.3–6.4 (parcialmente 6.2)

+ [Arroz, Monteiro & Oliveira]: É Cap. 14

ArqComp: Periféricos de computadores 37/37 2007-05-19

Notas:

Referências

Documentos relacionados

Desta forma, foram criadas as seguintes hipóteses de investigação: H1 – O compromisso organizacional e o engagement são diferentes para as categorias dos militares dos

Neste estudo foram estipulados os seguintes objec- tivos: (a) identifi car as dimensões do desenvolvimento vocacional (convicção vocacional, cooperação vocacio- nal,

da quem praticasse tais assaltos às igrejas e mosteiros ou outros bens da Igreja, 29 medida que foi igualmente ineficaz, como decorre das deliberações tomadas por D. João I, quan-

5 “A Teoria Pura do Direito é uma teoria do Direito positivo – do Direito positivo em geral, não de uma ordem jurídica especial” (KELSEN, Teoria pura do direito, p..

Nessa situação temos claramente a relação de tecnovívio apresentado por Dubatti (2012) operando, visto que nessa experiência ambos os atores tra- çam um diálogo que não se dá

Neste tipo de situações, os valores da propriedade cuisine da classe Restaurant deixam de ser apenas “valores” sem semântica a apresentar (possivelmente) numa caixa

ed è una delle cause della permanente ostilità contro il potere da parte dell’opinione pubblica. 2) Oggi non basta più il semplice decentramento amministrativo.

De acordo com a legislação portuguesa, estão sujeitos a receita médica os medicamentos que possam constituir um risco para a saúde do doente, direta ou