Temos as seguintes relações quando se trata de memória:
- Tempo de acesso mais rápido, maior maior custo por bit
- Maior capacidade, menor custo por bit
- Maior capacidade, menor tempo de acesso
Programadores não querem se preocupar se há memória suficiente e se ela é rápida suficiente para execução de um programa. Por isso surgiu a necessidade de criarmos uma hierarquia de memória, se memória rápida fosse barata, todas seguiriam essa mesma tecnologia.
Princípios da localidade de memória:
Localidade temporal
Posições de memória acessadas recentemente provavelmente serão acessadas novamente em breve Exemplo: instruções em um loop
Localidade espacial
Se uma posição de memória é acessada, provavelmente posições próximas serão acessadas em breve Exemplo: acesso sequencial a dados de um array
Para tirar vantagem dos tipos diferentes de memória:
- Disco armazena tudo, como instalação do sistema operacional e programas
- Ao executar um programa, os itens desse programa são copiados para memória RAM, que é menor mas tem velocidade maior que o disco
- Ao carregar instruções do programa, os dados são copiados para memória mais rápidas ainda, memória cache que fica localizada no CPU
Pirâmide de hierarquia de memória:
Memórias de níveis mais altos ficam mais próximas do CPU, os dados armazenados nos níveis mais altos sempre terão cópias armazenados nos níveis mais baixos.
Durante o acesso a memória, podemos ter um hit ou miss.
- hit: dado acessado está presente no nível superior
- miss: dado acessado está ausente e deve ser copiado do nível mais baixo, sendo fornecidos pro nível superior. Causa uma penalidade pelo acesso a memória inferior
Características do sistema de memória
- Localização: interno (registrador), externo (disco)
- Capacidade: words, bytes
- Unidade de transferência: word, block
- Método de acesso: sequencial, direto, aleatório
- Desempenho: tempo de acesso e ciclo
- Tipo físico: semicondutor, magnético, óptico
- Características físicas: volátil/não-volátil, erasable/non-erasable
- Organização: módulos de memória