Subsistemas de memórias
As memórias de cache utilizam o mecanismo de flip-flops que são mais rápidas, porém são caras. Já a memória principal (RAM) utiliza capacitores para armazenar as informações, sendo uma solução mais barata em relação à que utiliza flip-flops.
Hierarquia de memórias
- CPU (Registradores)
- Cache (L1, L2, L3)
- Memória Principal (DRAM)
- Memória Secundária (HDD, SSD, ROM)
Quanto mais próximo da base da hierarquia de memórias, menor o custo por byte, porém tem uma latência maior (mais devagar). Por exemplo, é mais barato armazenar dados no HD do que na memória RAM, porém a leitura e escrita em disco (HD) é muito mais lento.
Tempo de acesso
A latência indica o tempo de acesso na memória.
Capacidade
1 byte é a menor unidade de armazenamento, sendo o tamanho mínimo para armazenar um endereço de memória.
A capacidade de uma memória pode ser medido em palavras (por exemplo na arquitetura MIPS, 1 instrução requer 32 bits, ou seja, precisa de 4 palavras
Nota
Na arquitetura de 32 bits, é possível endereçar no máximo 4 GB, pois
4 GB, ou seja, você não pode adicionar um pente de memória com mais de 4 GB, pois o excedente não será utilizado. Já a arquitetura de 64 bits, é possível endereçar 16 EB (Exabyte).
A unidade de medida é na base 2, ou seja, KB (
Unidade de transferência
A transferência do conjunto de instruções e dados é feito em blocos (em S.O, esses blocos são chamados de página (paginação) que, no Windows e Linux, possuem 4 KB) da memória RAM para o cache, com isso há um ganho de performance.
Métodos de acesso
Sequencial
No método sequencial é necessário percorrer toda a fita para acessar um dado no final dela. De forma geral, o acesso depende da localização do dato e do cabeçote.
Ex: Fitas de backups
Direto
Note
Regularmente é necessário fazer a desfragmentação dos dados no disco para reagrupar os dados que estão dispersos entre as várias seções do disco. O Windows fornecem esse tipo de recurso.
Ex: discos rígidos
Aleatório
Possui um mecanismo de endereçamento único.
Ex: memória RAM
Associativo
Vale ressaltar que o tempo de busca dos dados não é constante, por esse motivo os cache são unidades menores de armazenamento. Por exemplo, os cache do processadores a medida que foi crescendo o tamanho foi necessário particionar em L1, L2 e L3.
Ex: cache