Buscar

Hierarquia de Memória

Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

Hierarquia da Memória
Hieraquia tradicional da memória
Quanto mais acima, mais rápida, mais cara mas menor capacidade de armazenamento.
Obs. : Os módulos de memória flash (pen-drives e similares) se encaixam em um ponto entre a unidade de disco e a memória RAM
Memória Cache
Processadores são sempre mais rápidos do que as memórias existentes, sendo esse um problema que ocasiona um gargalo no desempenho.
Projetistas de processadores sempre buscam melhorar o desempenho dos mesmos.
Por outro lado, projetistas de memórias focam mais em aumentar suas capacidades do que seu tempo de resposta.
Possível solução para o gargalo entre processador e memória principal: usar uma ou mais memórias caches.
Memória Cache
Uma memória cache tem as seguintes características:
Volátil
Alto desempenho (velocidade)
Baixa capacidade
Custo alto
Hit e Miss.
Cache vem do francês cacher, que significa “esconder”. 
A memória cache tenta esconder a memória principal do processador.
Memória Cache
A memória cache se localiza dentro do processador e é usada pelo mesmo para que em alguns momentos o acesso a memória principal seja evitado.
A ideia é que parte da memória principal seja colocada dentro da memória cache para rápido acesso.
Memória Cache
Porque somente parte da memória principal é colocada na memória cache?
Caso contrário não precisariamos de uma memória principal, tudo ficaria na cache.
É possível de ser feito, mas o processador ficaria muito grande e absurdamente caro.
É usado o principio da localidade para determinar o que entra na memória cache.
Memória Cache
Foi percebido que quando o processador busca alguma informação na memória principal possui uma alta probabilidade de ele voltar em seguida para buscar um dado que esteja na vizinhança.
Considerando isso, quando o processador necessita de alguma informação da memória principal ele a busca e aproveita o mesmo acesso para recuperar parte da informação que está perto dela.
Essa informação é então armazenada na memória cache.
Memória Cache
Um processador que usa um sistema de cache procura nesta memória (cache) pela informação a ser buscada antes de tentar acessá-la na memória principal.
Se a informação é encontrada na memória cache, dizemos que houve um hit.
Porém, se a informação necessária não estiver lá, precisamos buscá-la na memória principal. Esse cenário é chamado de miss.
Memória Cache – Hit / Miss
Memória Cache
Há uma perca de tempo quando um dado não está na memória cache e o processador tenta encontrá-lo lá antes de ir diretamente na memória principal.
Ainda assim estudos mostram que vale a pena usar esse tipo de memória, contanto que certos ajustes sejam realizados para evitar a taxa de misses.
Uma das formas de aumentar a taxa de acertos (hit) é aumentando a capacidade da memória cache.
Memória Cache
Para calcular o tempo médio de acesso a um dado em um processador que usa memória cache pode ser aplicada a seguinte fórmula: 
Tm = Tc + (1 – Th) x Tmp.
Tm é o tempo médio de acesso a um dado qualquer.
Tc é o tempo de acesso da memória cache.
Th é a taxa de acertos da memória cache (varia entre 0 e 1).
Tmp é o tempo de acesso da memória principal.
Memória Cache
Uma memória cache possui um alto custo por bit de capacidade.
Para aumentar a capacidade da memória cache e diminuir o custo total da mesma são usados diversos níveis de cache (L1, L2 e L3).
Memória Cache
O cache L1 é o mais rápido e com menor capacidade.
Cada núcleo de um processador possui seu próprio cache L1.
É muito comum os processadores usarem também um cache chamado de L2.
Esse cache é mais lento que o L1, porém, possui menor custo.
Geralmente há um único cache L2 para todos os núcleos.
Se a informação não for encontrada no L1, o processador procura por ela no L2 antes de acessar a memória principal.
Memória Cache
É comum também o uso de um terceiro cache chamado L3.
De forma geral o L3 é um pouco mais lento que L2 e é usado para armazenar informações que o processador “julga” serem de menor prioridade.
Costuma ser localizado na placa mãe.
Memória Cache
A capacidade das memórias caches variam muito de processador para processador, sempre aumentando o custo dos mesmos quando se encontra em maior quantidade.
O processador Intel Core i5 possui versões que variam entre 4 mb ~ 12 mb de cache, enquanto as versões mais atuais do Intel Core i7 podem chegar a 25 mb de cache.
Unidade de disco
Para identificar os locais e facilitar o acesso, os discos são divididos em diversos círculos concentricos, denomidados trilhas. 
Na primeira trilha, denominada trilha zero, são gravadas informações do sistema, tais como o registro de boot e informações sobre como aquele disco em particular está organizado
Unidade de disco
Trilhas são subdivididas em vários segmentos, cada um com capacidade de armazenar um tamanho fixo de bytes (normalmente 512), denominados de setor.
Unidade de disco
Visão interna de dois setores de um disco, cada setor armazenando 512 bytes (ou 4096 bits).
Unidade de disco
Dentro da trilha, os setores são numerados distintamente. 
Para facilitar o acesso, utiliza-se também o princípio do interleave (numeração de forma alternada dos setores), para compensar os tempos entre a rotação do disco e o tempo gasto para os circuitos interpretarem cada setor lido.
Unidade de disco
Para localizar um determinado setor, a unidade de disco o localiza pelo cruzamento do numero da trilha com o numero do setor.
Do ponto de vista do sistema operacional, os setores aparecem linearizados, recebendo uma numeração sequencial do primeiro ao último setor do disco.
Unidade de disco
Unidades de disco rígido podem conter vários pratos metálicos fixos a um mesmo eixo, com cabeças de leitura separadas para cada superfície. 
O conjunto vertical de trilhas composto pelas trilhas das várias faces são denominados cilindros.
Unidade de Disco
Resumindo:
Pratos
Cabeças
Trilhas
Setores
Cilindro
Em HDs convencionais é comum encontrar entre 1 a 5 pratos, cada qual com sua própria “cabeça”.
Unidade de disco
A capacidade total de armazenamento de um disco é dada pela combinação dos fatores:
Quantidade de faces com as respectivas cabeças de leitura/gravação (heads)
Quantidade de trilhas por face (tracks)
Quantidade de setores por trilha (sectors)
Quantidade de bytes por setor (valor fixo: 512)
Exemplo, um disco de 8 faces, 1200 trilhas por face, 1200 setores por face: 
8*1200*1200*512 = 5898240000 bytes, ou aprox. 5,4 Gb.
Unidade de disco: clusters
Unidades de disco considerarem o setor com unidade básica de leitura e gravação.
Sistemas operacionais consideram unidades maiores, denominadas clusters.
Clusters podem ter tamanho variado, de 512 bytes a até 64Kb. 
Se, por exemplo, um determinado sistema considerar uma unidade de disco com clusters de 32Kb, e for gravado um arquivo que ocupe 2 Kb, os restantes 30Kb do disco não são aproveitados pelo sistema, sendo contados como espaço perdido.
Unidade de disco: Desempenho
Para se comparar unidades de disco, com relação à sua eficiência, usa-se duas medidas comuns: o tempo médio de acesso e sua taxa de transferência.
Unidade de disco: Desempenho
Tempo Médio de Acesso (Average Seek Time)
Tempo gasto pela unidade para posicionar as cabeças de leitura-gravação em qualquer ponto do disco. 
É uma média dos diversos tempos obtidos pelo posicionamento em diversas distâncias. 
É diretamente proporcional à velocidade de rotação do disco e ao tampo gasto para mover o cabeçote de uma trilha até a outra.
Taxa de Transferência (Transfer Rate)
Quantidade de dados que podem ser lidos ou gravado na unidade, normalmente no espaço de 1 segundo. 
Deve-se tomar cuidado pelo fato que, enquanto alguns fabricantes divulgam este valor em Mb (megabytes) por segundo, outros a divulgam em termo de Mbits (megabits) por segundo.
Em termos práticos, um disco com capacidade de 15 Mbits/seg transfere aproximadamente1,87 Mb/seg.
Unidades ópticas (CD e DVD)
O CD original possui depressões de 0,8 mícrons de diametro, denominados pits.
A área do CD que não possui depressões são denominadas lands.
Pits e lands se distribuem em uma espiral concêntrica, iniciando da parte interior do disco para a parte externa.
Unidades ópticas (CD e DVD)
Quando a luz bate num land, ela é totalmente refletida de volta, sendo detectada por um fotodetetor.
Os pits possuem altura equivalente a ¼ do comprimento de onda da luz do laser. 
Quando a luz bate num pit, ela volta defasada devido a altura do pit.
Existe um cancelamento entre a luz original e a refletida no pit.
Fotodetetor irá captar menos luz, desta forma identificando nos pits e lands os zeros e uns necessários para a informação binária.
Unidades ópticas (CD e DVD)
Unidades de DVD são semelhantes, mas possuem maior capacidade, devido a:
Pits com a metade do tamanho (0,4 mícrons)
Espiral mais apertada e maior (espaçamento de 0,74 mícrons contra 1,6 mícrons do CD).
Laser de comprimento de onda menor.
Unidades ópticas regraváveis.
CD-RW:
Ao invés da tinta, usa-se uma mistura de prata, antimônio, índio e telúrio.
Essa mistura possui dois estados estáveis: cristalino (com alta reflexão da luz) e amorfo (com baixa reflexão).
O laser de gravação ao iluminar o ponto em potência máxima faz com que a mistura se derreta e passe para o estado amorfo.
Ao iluminar o ponto em potência média, a mistura será derretida porém regenerada, voltando ao estado cristalino.
Quando se efetua a leitura, o laser fica na potência mínima, não causando mudança no estado da substância.
Unidades SSD (Solid State Disk)
Unidades que se comportam como unidades de disco, mas são constituidas por módulos de memória “flash”.
São muito mais rápidas do que os discos rígidos por dois motivos: 
Não há conversão entre informação magnética e informação eletrônica;.
Não existem partes mecânicas e, portanto, os dados estão disponíveis imediatamente.
Outras características:
Menor consumo de energia
Imunes a impactos
Unidades SSD (Solid State Disk)
Visão do exterior e do interior de uma unidade SSD.
Unidades SSD (Solid State Disk)
Ponto “negativo”: as memórias utilizadas possuem um limite do numero de vezes que podem ser regravadas.
Tipos de circuitos para memórias flash:
SLC (Single-Level Cell ou Célula de Nível Único)
Cada circuito armazena um único bit
Permitem cerca de 100.000 ciclos de apagamento / escrita.
MLC (Multiple-Level Cell ou Célula de Múltiplos Níveis)
Cada circuito armazena mais de um bit
Permitem até 10.000 ciclos de apagamento/escrita, ou menos.
Custo é mais baixo.

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?

Outros materiais