A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Armazenamento, Redes e Outros Periféricos

Apresentações semelhantes


Apresentação em tema: "Armazenamento, Redes e Outros Periféricos"— Transcrição da apresentação:

1 Armazenamento, Redes e Outros Periféricos
André Luis Meneses Silva

2 Introdução Projeto de E/S é afetado por muitos fatores externos (expansibilidade, resiliência). Desempenho: Latência Vazão Conexão entre os dispositivos e o sistema Hierarquia de Memória O Sistema Operacional Uma variedade de usuários diferentes (por exemplo, bancos, supercomputadores, engenheiros).

3 Interface entre processadores e periféricos

4 Discos Magnéticos Elementos de Armazenamento não volátil
Formado por uma pilha de pratos que gira entre a rpm. Alta capacidade de armazenamento, pouco veloz.

5 Discos Magnéticos Sector (setor): Unidade que compõe as trilhas, armazenam dados, guardando, em geral, 512 bytes de informação. Cilindro: Conjunto de trilhas com um mesmo número nos vários discos. Track (trilha): círculos concêntricos que começam no final do disco e vão se tornando menores conforme se aproximam do centro. Cada trilha possui um número de endereçamento. A mais externa é 0. As sucessoras 1, 2, 3... Entre cada trilha, setor, existem marcas especiais que orientam as cabeças magnéticas para sinalizar o início/fim de uma trilha ou setor.

6 Aumentando a Disponibilidade
RAID (Redudant Arrays of Inexpensive Disks) Organização de discos que usa um array de discos pequenos e baratos para aumentar o desempenho e confiabilidade. Existem 7 tipos de RAID

7 Barramentos Link de comunicação compartilhado (um ou mais fios).
Projeto difícil: Pode ser gargalo Extensão do barramento Número de dispositivos Negociações (buffers para largura de banda maior aumenta a latência) Suporte para muitos dispositivos diferentes Custo.

8 Barramentos Quanto a forma de comunicação: Síncrono Assíncrono
Inclui um clock nas linhas de controle e um protocolo fixo para comunicação, que é relativo ao clock. Cada dispositivo precisa operar na mesma velocidade Devido ao clock, quanto mais longo for o barramento, menor será sua velocidade. Assíncrono Utiliza um protocolo de handshaking para coordenar o uso. Série de etapas em que o emissor e o receptor prosseguem para a próxima etapa apenas quando as duas partes concordarem. Acomoda uma grande variedade de dispositivos de diferentes velocidades.

9 Exemplo Barramento Síncrono - AMBA
Sensível a subida de ciclo.

10 Exemplo Barramento Assíncrono
1. Memória vê a ReadReq, lê o endereço em Data e levanta Ack. 2. O processador vê a linha Ack e libera as linhas ReadReq e Data. 3. Memória vê ReadReq baixo e abaixa a linha Ack. 4. Quando a memória possuir dados prontos, coloca os dados em Data e levanta DataRdy 5. Processador vê DataRdy, lê os dados em Data e levanta Ack 6. Memória vê Ack, abaixa DataRdy e libera Data. 7. Processador vê DataRdy baixar, abaixa a linha Ack.

11 Arbitragem O barramento pode ter mais de um elemento de processamento ligado a ele. Caso dois elementos desejem utilizar o barramento: Quem decidirá qual receberá o direito de uso? Quem é responsável por escalonar o uso entre os elementos de processamento? Barramentos mais modernos possui um árbitro interno responsável por realizar estas funções.

12 Exemplo AMBA

13 Intel Pentium IV

14 Interface dos dispositivos de E/S com processador, memória e sistema operacional
As responsabilidades do S.O. com os dispositivos de E/S surgem de três características que eles apresentam: Diversos programas usando o processador compartilham o sistema de E/S Os sistemas de E/S normalmente usam interrupções para comunicar informações de E/S (modo supervisor). O controle de baixo nível de um dispositivo de E/S é complexo.

15 Interface dos dispositivos de E/S com processador, memória e sistema operacional
Garante que um programa de usuário acessa apenas as partes de um dispositivo de E/S para as quais o usuário possui direitos. Oferece abstrações para acessar dispositivos fornecendo rotinas que tratam as operações de baixo nível. Testem copiar um .wav ou .pcm para /dev/dsp no linux. O sistema operacional trata as interrupções geradas pelo dispositivo de E/S, assim como trata as exceções geradas pelo programa. O sistema operacional tenta oferecer acesso equilibrado aos recursos de E/S, além de escalonar acessos a fim de melhorar a vazão do sistema.

16 Dando comandos a dispositivos de E/S
Processadores se comunicam com dispositivos de E/S através de dois diferentes métodos: E/S mapeada em memória: Partes do espaço de endereçamento são atribuídas a dispositivos de E/S. Leituras e escritas para esses endereços são interpretadas como comandos aos dispositivos de E/S

17 Dando comandos a dispositivos de E/S
Processadores se comunicam com dispositivos de E/S através de dois diferentes métodos: Instruções de E/S especiais: Uma instrução dedicada, usada para dar um comando a um dispositivo de E/S e que especifica o número do dispositivo e a word de comando (ou o local da word de comando na memória). Em geral, não disponíveis no modo usuário.

18 Comunicação com o processador
O processador precisa saber quando o dispositivo de E/S está pronto para realizar uma nova operação. Para solicitar uma nova operação. Para recolher os dados processados pelo dispositivo. Estes dois passos são muito empregados na transferência de dados entre dois dispositivos de armazenamento. Existem três abordagens para tratar desta comunicação.

19 Comunicação com o processador
Pooling O processador verifica periodicamente o status de um dispositivo de E/S para determinar a necessidade de atender ao dispositivo. Problemas Processador precisa ficar a todo momento verificando disponibilidade do dispositivo. Processador participa diretamente da transferência de dados. E/S controlada por interrupção Um esquema de E/S que emprega interrupções para indicar ao processador que um dispositivo de E/S precisa de atenção.

20 Comunicação com o processador
DMA Um mecanismo que oferece a um controlador de dispositivo a capacidade de transferir dados diretamente da memória ou para ela sem envolver o processador.

21 Comunicação com o processador
DMA Passos: Processador configura o DMA, fornecendo a identidade do dispositivo, a operação a realizar no dispositivo, o endereço de memória que é a origem ou o destino dos dados a ser transferidos. O DMA inicia a operação no dispositivo e arbitra o acesso ao barramento. Quando a transferência de DMA termina, o controlador interrompe o processador. O processador pode interrogar o DMA sobre o sucesso ou não da operação.

22 Multiprocessadores e Clusters
André Luis Meneses Silva

23 Introdução A motivação para o desenvolvimento de sistemas multiprocessados é a idéia de desenvolver computadores poderosos a partir de computadores menores e baratos. Boa notícia Funciona para compartilhamento de tempo (melhor que um supercomputador). Má notícia: É muito difícil escrever bons programas concorrentes, muitas falhas comerciais.

24 Introdução

25 Compartilhamento de dados
Como os processadores paralelos compartilham dados? Memória Compartilhada Transferência de mensagens

26 Compartilhamento de dados
Memória Compartilhada Processadores se comunicam através de variáveis compartilhadas na memória. Processadores possuem espaço de endereçamento comum.

27 Compartilhamento de dados
Memória Compartilhada Podem ser: UMA (Uniform Memory Access) ou SMP (Symetric Multiprocessor) Leva o mesmo tempo para acessar a memória principal independente do processador ou word requisitada. NUMA (Non Uniform Memory Access) Alguns acessos a memória podem ser mais rápidos que outros.

28 Compartilhamento de dados
Troca de Mensagens Utilizadas em máquinas com memória privadas, como por exemplo, clusters.

29 Como eles são implementados
Conectados por um único barramento. Conectados por uma rede.

30 Multiprocessadores Conectados por um único barramento

31 Multiprocessadores Conectados por um único barramento
Características: O tráfego por processador e a largura de banda do barramento determinam o número útil de processadores. As caches reduzem o tráfego de barramento, permitindo o convívio entre mais de um processador. No entanto, pode aparecer problemas relativos a a coerência dos dados presente na cache.

32 Coerência de Cache Exemplo de plataforma (caches write back)
Lê 54 da posição 0

33 Coerência de Cache Exemplo de plataforma Lê 54 da posição 0

34 Coerência de Cache Exemplo de plataforma Escreve 30 na posição 0

35 Coerência de Cache Exemplo de plataforma
P2 estará trabalhando com um valor inconsistente, visto que o mesmo foi alterado por P1 Exemplo de plataforma

36 Solução - Snoop Introdução de módulos vigilantes (snoop) que notifica o processador sobre as alterações de dados.

37 Multiprocessadores conectados por rede

38 Clusters Construídos a partir de computadores inteiros.
Redes independentes e escaláveis Vantagens: Muitas aplicações receptivas a máquinas frouxamente agrupadas. Exploram redes locais. Econômicos, fáceis de expandir Desvantagens Custos de administração não são necessariamente baixos Conectados usando um barramento de E/S. A aplicação que executa em uma dada máquina utiliza apenas 1/n do poder de processamento do cluster (n = n. de máquinas) Altamente disponível devido a separação das memórias.

39 FIM


Carregar ppt "Armazenamento, Redes e Outros Periféricos"

Apresentações semelhantes


Anúncios Google