UNIDADES DE MEMÓRIAexterna de quase todos os sistemas de computação. Em seguida discutiremos:...

Post on 09-Dec-2020

0 views 0 download

Transcript of UNIDADES DE MEMÓRIAexterna de quase todos os sistemas de computação. Em seguida discutiremos:...

ARQUITETURA DE COMPUTADORESUNIDADES DE MEMÓRIA

Prof: Leandro Coelho

Leandro.coelho@unifacs.br

1

Plano de Aula

� Memória Interna� Registradores

� Cache� L1

� L2

� Principal (RAM)

� Memória Externa� Secundária

� Persistente

2

Plano de Aula

� Começaremos o estudo da memória externa, com o dispositivo mais importante, o disco magnético.� Os discos magnéticos constituem a base da memória

externa de quase todos os sistemas de computação.

� Em seguida discutiremos:� RAID (redudant array of independent disks – agrupamento

redundantes de discos independentes).

� Memória externa óptica.

� Fitas magnéticas.

3

Arquitetura de ComputadoresMemória Externa

� Disco Magnético (HD)� Um disco magnético é um prato circular construído de

metal coberto por um material magnetizável;

� Os dados são gravados e depois se recuperam através de uma bobina chamada cabeça (leitura e gravação);

� O mecanismo de escrita é baseado no campo magnético produzido pelo fluxo elétrico que atravessa a bobina;

� O mecanismo de leitura é baseado na corrente elétrica que atravessa a bobina, produzida por um campo magnético que se move em relação a bobina.

4

Arquitetura de ComputadoresMemória Externa

� Disco Magnético (HD)

5

Pratos

Cabeça

Atuador

BraçoMotor

Arquitetura de ComputadoresMemória Externa

� Organização Física� Os pratos são os discos onde os dados são

armazenados. � Eles são feitos de alumínio (ou de um tipo de cristal)

recoberto por um material magnético e por uma camada de material protetor.

� Quanto mais trabalhado for o material magnético (ou seja, quanto mais denso), maior é a capacidade de armazenamento do disco. � HDs com grande capacidade contam com mais de um prato,

um sobre o outro.

6

Arquitetura de ComputadoresMemória Externa

� Organização Física� Eles ficam posicionados sob um motor responsável por

fazê-los girar. � 5.400 rpm

� 7.200 rpm

� 10.000 rpm

7

Arquitetura de ComputadoresMemória Externa

� Organização Física� Cabeça / Cabeçote

� Um dispositivo muito pequeno de leitura e gravação.

� Trata-se de um item de tamanho reduzido que contém uma bobina que utiliza impulsos magnéticos para manipular as moléculas da superfície do disco, e assim gravar dados.

� Há uma cabeça para cada lado dos discos.

� Esse item é localizado na ponta de um dispositivo denominado braço, que tem a função de posicionar os cabeçotes sob a superfície dos pratos.

8

Arquitetura de ComputadoresMemória Externa

� Organização Física� Atuador:

� Também chamado de voice coil

� É responsável por mover o braço sob a superfície dos pratos, e assim permitir que as cabeças façam o seu trabalho. Para que a movimentação ocorra, o atuador contém em seu interior uma bobina que é "induzida" por imãs.

9

Arquitetura de ComputadoresMemória Externa

� Disco Magnético (HD)� Organização dos dados

� A cabeça é um dispositivo relativamente pequeno, capaz de ler e escrever em uma zona do prato que roda sob ela;

� Os dados se organizam em um conjunto de anéis Concêntricos no prato, chamados de pistas ou trilhas.

� Cada pista possui a mesma largura da cabeça.

� Cada trilha é dividida em trechos regulares chamados de setores.

� Ao conjunto posicional de cabeças em uma determinada trilha do disco, chama-se cilindro.

� Posição das cabeças sobre as mesmas trilhas de seus respectivos discos

10

Arquitetura de ComputadoresMemória Externa

� Disco Magnético (HD)� Organização dos dados

11

Cilindros

Trilhas

Sectores

Bytes

Arquitetura de ComputadoresMemória Externa

� Disco Magnético (HD)� Organização dos dados

� Internamente pode ser dividido ....

12

1

23

Bandas de separação de pistas : minimiza os erros por desalinhamento ou interferência do campo magnético.

Pista (Trilhas): é armazenado o mesmo número de bits em cada pista. A densidade, em bits por polegada linear, aumenta segundo se avança da pista mais externa a mais interna.

Setores: os dados se transferem até e desde o disco em blocos. Os dados se armazenam em regiões do tamanho de um bloco conhecidas como setores.

Arquitetura de ComputadoresMemória Externa

� Disco Magnético (HD)� Organização dos dados

� Como se identificam as posições dos setores dentro de uma pista dada?

13

Mediante dados de controle gravados no disco, que indicam a pista, o princípio e o fim de cada setor.

Por tanto, no disco se grava com um formato que contém alguns dados extras usados somente pelo disco e não acessível ao usuário.

Arquitetura de ComputadoresMemória Externa

� Disco Magnético (HD)� Organização dos dados

� Como se identificam as posições dos setores dentro de uma pista dada?

14

No exemplo, cada pista contém 30 setores de tamanho fixo de 600 bytescada um.

Cada setor contém 512 bytes de dados mais informações de controle útil ao controlador de disco.

Arquitetura de ComputadoresMemória Externa

� Organização Física� Características dos sistemas de disco

15

� Deslocamento de cabeças� Cabeça móvel (uma por superfície)

� Transportabilidade de disco� Disco fixo

� Disco removível

� Superfícies� Superfície única

� Superfície dupla

Arquitetura de ComputadoresMemória Externa

� Organização Física� Cabeça / Cabeçote

� Disco com vários cilindros� Algumas unidades de disco

acomodam múltiplos pratos empilhados verticalmente.

� São usados braços múltiplos.

� Os pratos são agrupados em unidades denominadas pacotes de disco.

16

Arquitetura de ComputadoresMemória Externa

� Parâmetros de desempenho de discos� Detalhes de uma operação de E/S (HD) dependem:

� do sistema de computação;

� do sistema operacional;

� do hardware usado no canal de E/ S; e

� no controlador de disco.

� O diagrama de tempo de uma operação de E/S:

17

Espera por dispositivo

Espera por

canal BuscaAtraso

rotacionalTransferência de

dados

Dispositivo ocupado

Tempo de uma operação de E/S em um disco.

Arquitetura de ComputadoresMemória Externa

� Parâmetros de desempenho de discos� Quando uma unidade de disco está em operação, o

disco gira a uma velocidade constante.

� Para ler ou escrever um valor, o cabeçote deve ser posicionado sobre a trilha desejada e no início do setor desejado da trilha.

18

Arquitetura de ComputadoresMemória Externa

� Parâmetros de desempenho de discos� A seleção da trilha requer a movimentação do

cabeçote, em um sistema de cabeçote móvel, ou a seleção eletrônica de um dos cabeçotes, em um sistema de cabeçote fixo.

� Em ambos os sistemas, uma vez selecionada a trilha, o controlador de disco espera que o disco gire até que o setor desejado esteja alinhado com o cabeçote.

19

Arquitetura de ComputadoresMemória Externa

� Parâmetros de desempenho de discos� Em um sistema de cabeçote móvel, o tempo para

posicionar o cabeçote na trilha é denominado tempo de busca (seek time).

� O tempo decorrido até que o início do setor esteja sob o cabeçote é denominado atraso rotacional ou latência rotacional.

� A soma do tempo de busca, se houver, com o atraso rotacional é denominada tempo de acesso, isto é, o tempo requerido para atingir a posição em que deve ser feita a leitura ou a escrita.

20

Arquitetura de ComputadoresMemória Externa

� Parâmetros de desempenho de discos

tempo de acesso = tempo de busca + atraso rotacional

21

Arquitetura de ComputadoresMemória Externa

� Parâmetros de desempenho de discos� Uma vez que o cabeçote esteja na posição correta, a

operação de leitura ou escrita é feita à medida que o setor se move sob o cabeçote; � Operação corresponde à transferência de dados.

� Além do tempo de acesso e do tempo de transferência, existem normalmente vários atrasos associados a uma operação de E/S em um disco.

22

Arquitetura de ComputadoresMemória Externa

� Parâmetros de desempenho de discos� Quando um processo faz uma requisição de E/S, ela

deve primeiro esperar em uma fila até que o dispositivo esteja disponível. � O dispositivo é então alocado para o processo.

� Se o dispositivo compartilha um canal de E/S ou um conjunto de canais de E/S com outras unidades de disco, pode haver uma espera adicional para que o canal fique disponível. � Quando isso ocorre, a operação de busca da trilha pode

ser iniciada.

23

Arquitetura de ComputadoresMemória Externa

� Parâmetros de desempenho de discos� Tempo de busca

� O tempo de busca é o tempo necessário para mover o braço do disco até a trilha desejada.

� Ele é difícil de ser medido.

� Constitui-se de dois componentes principais: � Tempo inicial de partida e o

� Tempo requerido para percorrer as trilhas depois que o braço de acesso está pronto para se movimentar.

24

Arquitetura de ComputadoresMemória Externa

� Parâmetros de desempenho de discos� Tempo de busca

� O tempo de percurso, infelizmente, não é uma função linear do número de trilhas percorridas.

� O tempo de busca pode ser aproximado pela seguinte fórmula linear:

25

snmTs +×=onde:

Ts = tempo estimado de busca

m = constante que depende da unidade de disco

n = número de trilhas percorridas

s = tempo de partida

• Em um disco rígido barato de um computador pessoal, os valores desses parâmetros são, aproximadamente, m = 0,3 ms e s = 20 ms.

• Em um disco maior e mais caro, podemos ter m = 0,1 ms e s = 3 ms.

Arquitetura de ComputadoresMemória Externa

� Parâmetros de desempenho de discos� Atraso rotacional

� Discos giram tipicamente a 3600 rpm.� Assim, o atraso rotacional médio é de 16,7 ms.

� Discos modernos têm uma rotação típica de 7200 rpm.� Assim, o atraso rotacional médio é de 8,3 ms

� Discos flexíveis giram tipicamente com 300 e 600 rpm.� Assim, o atraso rotacional médio é de 200 a 100 ms

� Existem discos com rotação superior a 10.000 rpm.

26

( 1 / 7200 ) * 60 * 1000( 1 / 3600 ) * 60 * 1000( 1 / 7200 ) * 60 * 1000

Arquitetura de ComputadoresMemória Externa

� Parâmetros de desempenho de discos� Tempo de transferência

� O tempo de transferência do disco depende da sua velocidade de rotação, conforme a seguinte relação:

27

rN

bT =

onde:

T = tempo de transferência

b = números de bytes transferidos

N = número de bytes na trilha

r = velocidade de rotação em número de revoluções p or segundo

Arquitetura de ComputadoresMemória Externa

� Parâmetros de desempenho de discos� O tempo total de acesso médio pode ser expresso:

28

onde:

Ta = tempo total de acesso médio

Ts = tempo médio de busca

b = números de bytes transferidos

N = número de bytes na trilha

r = velocidade de rotação em número de revoluções p or segundo

rN

b

rTT sa ++=

2

1

Arquitetura de ComputadoresMemória Externa

� Parâmetros de desempenho de discos� Comparação de tempos de acesso

� Exemplo (PARA 7200rpm):

� Duas diferentes operações de E/S que mostram o perigo de se confiar em valores médios:

� Considere um disco típico com tempo médio de busca anunciado pelo fabricante de 20 ms, taxa de transferência de 1 Mbyte/s e setores de 512 bytes, com 32 setores por trilha. Suponha que desejamos ler um arquivo de 128 Kbytes com 256 setores. Estimamos o tempo total para a transferência.

29

Arquitetura de ComputadoresMemória Externa

� Parâmetros de desempenho de discos� Comparação de tempos de acesso

� Exemplo:

� Duas diferentes operações de E/S que mostram o perigo de se confiar em valores médios:

� Considere um disco típico com tempo médio de busca anunciado pelo fabricante de 20 ms, taxa de transferência de 1 Mbyte/s e setores de 512 bytes, com 32 setores por trilha. Suponha que desejamos ler um arquivo de 128 Kbytes com 256 setores. Estimamos o tempo total para a transferência.

30

Tempo médio de busca = 20 ms

Rotação do disco = 7200 rpm.

Taxa de transferência = 1 Mbyte/s

Setores de 512 bytes

32 setores por trilha

Arquitetura de ComputadoresMemória Externa

� Parâmetros de desempenho de discos� Comparação de tempos de acesso

� Exemplo:

� Duas diferentes operações de E/S que mostram o perigo de se confiar em valores médios:

� Considere um disco típico com tempo médio de busca anunciado pelo fabricante de 20 ms, taxa de transferência de 1 Mbyte/s e setores de 512 bytes, com 32 setores por trilha. Suponha que desejamos ler um arquivo de 128 Kbytes com 256 setores. Estimamos o tempo total para a transferência.

31

Tempo médio de busca = 20 ms

Rotação do disco = 7200 rpm.

Taxa de transferência = 1 Mbyte/s

Setores de 512 bytes

32 setores por trilha

Primeiramente, supomos que o arquivo está armazenado no disco da maneira mais compacta possível.

Ou seja, o arquivo ocupa todos os setores de oito trilhas adjacentes (8 trilhas x 32 setores / trilhas = 256 setores).

Essa organização é conhecida como organização seqüencial.

Arquivo de 128 Kbytes.

128 Kbytes * 1024 = 131072 bytes

131072 bytes / 512 = 256 setores

32 trilhas por Setor ���� 8

Arquitetura de ComputadoresMemória Externa

� Parâmetros de desempenho de discos� Comparação de tempos de acesso

� Exemplo:

� Duas diferentes operações de E/S que mostram o perigo de se confiar em valores médios:

� Considere um disco típico com tempo médio de busca anunciado pelo fabricante de 20 ms, taxa de transferência de 1 Mbyte/s e setores de 512 bytes, com 32 setores por trilha. Suponha que desejamos ler um arquivo de 128 Kbytes com 256 setores. Estimamos o tempo total para a transferência.

32

Tempo médio de busca = 20 ms

Rotação do disco = 7200 rpm.

Taxa de transferência = 1 Mbyte/s

Setores de 512 bytes

32 setores por trilha

Tempo de acesso à primeira trilha é assim calculado:

Tempo médio de busca 20,0 ms

Atraso rotacional + 8,3 ms

Leitura de 32 setores 15,6 ms

Tempo para a leitura da primeira trilha 43,9 ms

Arquitetura de ComputadoresMemória Externa

� Parâmetros de desempenho de discos� Comparação de tempos de acesso

� Exemplo:

� Duas diferentes operações de E/S que mostram o perigo de se confiar em valores médios:

� Considere um disco típico com tempo médio de busca anunciado pelo fabricante de 20 ms, taxa de transferência de 1 Mbyte/s e setores de 512 bytes, com 32 setores por trilha. Suponha que desejamos ler um arquivo de 128 Kbytes com 256 setores. Estimamos o tempo total para a transferência.

33

Tempo médio de busca = 20 ms

Rotação do disco = 7200 rpm.

Taxa de transferência = 1 Mbyte/s

Setores de 512 bytes

32 setores por trilha

Tempo de acesso à primeira trilha é assim calculado:

Tempo médio de busca 20,0 ms

Atraso rotacional + 8,3 ms

Leitura de 32 setores 15,6 ms

Tempo para a leitura da primeira trilha 43,9 ms

(1/7200)*60*1000

32 setores * 512 bytes = 16384 bytes

1 Mbyte/s = 1048576 byte/s

16384bytes/1048576byte/s=0,015625s

0,015625s * 1000 = 15,62 ms

Arquitetura de ComputadoresMemória Externa

34

Tempo médio de busca = 20 ms

Rotação do disco = 7200 rpm.

Taxa de transferência = 1 Mbyte/s

Setores de 512 bytes

32 setores por trilha

Tempo para a leitura da primeira trilha 43,9 msz

Suponha que as trilhas restantes possam ser lidas essencialmentesem tempo de busca. Ou seja, a operação de E/ S pode acompanhar a velocidade de fluxo do disco.

Precisamos então lidar apenas com o atraso rotacional para cada trilha subseqüente. Dessa maneira, cada trilha sucessiva élida em 8,3 + 15,6 = 23,9 ms.

Tempo de acesso à primeira trilha é assim calculado:

Tempo médio de busca 20,0 ms

Atraso rotacional + 8,3 ms

Leitura de 32 setores 15,6 ms

Tempo para a leitura da primeira trilha 43,9 ms

Arquitetura de ComputadoresMemória Externa

35

Tempo médio de busca = 20 ms

Rotação do disco = 7200 rpm.

Taxa de transferência = 1 Mbyte/s

Setores de 512 bytes

32 setores por trilha

Tempo para a leitura da primeira trilha 43,9 msz

Suponha que as trilhas restantes possam ser lidas essencialmentesem tempo de busca. Ou seja, a operação de E/ S pode acompanhar a velocidade de fluxo do disco.

Precisamos então lidar apenas com o atraso rotacional para cada trilha subseqüente. Dessa maneira, cada trilha sucessiva élida em 8,3 + 15,6 = 23,9 ms.

Para ler o arquivo inteiro, temos:

Tempo total = 43,9 + 7 x 23,9 = 221,1 ms = 0,21 s

Arquitetura de ComputadoresMemória Externa

� Parâmetros de desempenho de discos� Comparação de tempos de acesso

� Exemplo:

� Duas diferentes operações de E/S que mostram o perigo de se confiar em valores médios:

� Considere um disco típico com tempo médio de busca anunciado pelo fabricante de 20 ms, taxa de transferência de 1 Mbyte/s e setores de 512 bytes, com 32 setores por trilha. Suponha que desejamos ler um arquivo de 128 Kbytes com 256 setores. Estimamos o tempo total para a transferência.

36

Tempo médio de busca = 20 ms

Rotação do disco = 7200 rpm.

Taxa de transferência = 1 Mbyte/s

Setores de 512 bytes

32 setores por trilha

Agora calculamos o tempo necessário para ler os mesmos dados, usando acesso aleatório em vez de acesso seqüencial, isto é, supondo que os setores são distribuídos aleatoriamente pelo disco. Para cada setor, temos:

Tempo médio de busca 20,0 ms

Atraso rotacional 8,3 ms

Leitura de um setor 0,5 ms

28,8 ms

Arquitetura de ComputadoresMemória Externa

� Parâmetros de desempenho de discos� Comparação de tempos de acesso

� Exemplo:

� Duas diferentes operações de E/S que mostram o perigo de se confiar em valores médios:

� Considere um disco típico com tempo médio de busca anunciado pelo fabricante de 20 ms, taxa de transferência de 1 Mbyte/s e setores de 512 bytes, com 32 setores por trilha. Suponha que desejamos ler um arquivo de 128 Kbytes com 256 setores. Estimamos o tempo total para a transferência.

37

Tempo médio de busca = 20 ms

Rotação do disco = 7200 rpm.

Taxa de transferência = 1 Mbyte/s

Setores de 512 bytes

32 setores por trilha

Agora calculamos o tempo necessário para ler os mesmos dados, usando acesso aleatório em vez de acesso seqüencial, isto é, supondo que os setores são distribuídos aleatoriamente pelo disco. Para cada setor, temos:

Tempo médio de busca 20,0 ms

Atraso rotacional 8,3 ms

Leitura de um setor 0,5 ms

28,8 ms

Tempo total = 256 x 28,8 = 7373 ms = 7,37s

1 setores * 512 bytes = 512 bytes

1 Mbyte/s = 1048576 byte/s

512bytes/1048576byte/s=0,00048828

0,00048828 s * 1000 = 0,5 ms

Arquitetura de ComputadoresMemória Externa

� Resumindo...

� Calculando com arquivo ocupando todos os setores de oito trilhas adjacentes (8 trilhas x 32 setores / trilhas = 256 setores) - organização seqüencial:

� Tempo total = 0,21s

� Calculando o tempo necessário para ler os mesmos dados, usando acesso aleatório, isto é, supondo que os setores são distribuídos aleatoriamente pelo disco.

� Tempo total = 7,37s

38

Tempo médio de busca = 20 ms

Rotação do disco = 7200 rpm.

Taxa de transferência = 1 Mbyte/s

Setores de 512 bytes

32 setores por trilha

Agora calculamos o tempo necessário para ler os mesmos dados, usando acesso aleatório em vez de acesso seqüencial, isto é, supondo que os setores são distribuídos aleatoriamente pelo disco. Para cada setor, temos:

Tempo médio de busca 20,0 ms

Atraso rotacional 8,3 ms

Leitura de um setor 0,5 ms

28,8 ms

Tempo total = 256 x 28,8 = 7373 ms = 7,37s

1 setores * 512 bytes = 512 bytes

1 Mbyte/s = 1048576 byte/s

512bytes/1048576byte/s=0,00048828

0,00048828 s * 1000 = 0,5 ms

Arquitetura de ComputadoresMemória Externa

� Resumindo...

39

Arquitetura de ComputadoresMemória Externa

� Concluindo� A ordem em que os setores são obtidos no disco tem

efeito significativo sobre o desempenho de E/S.

� No caso de acessos a arquivos em que a leitura ou a escrita é feita em múltiplos setores, é possível ter algum controle sobre o modo como os setores de dados são organizados no disco.

40

Arquitetura de ComputadoresMemória Externa

� Concluindo� Em um ambiente de multiprogramação, mesmo no caso

de acesso a um único arquivo, existirão diversas requisições de E/S competindo por um mesmo disco.

� Vale a pena examinar como o desempenho de operações de E/S pode ser melhorado em relação ao desempenho obtido quando o acesso ao disco épuramente aleatório.

41