MEMÓRIA CACHE
1. Descreva as técnicas de mapeamento que podem ser utilizadas para mapeamento da memória cache. Explique como é realizado o mapeamento em cada técnica.
2. O grande desejo de todos os desenvolvedores de programas é utilizar quantidades ilimitadas de memória que, por sua vez, seja extremamente rápida. Infelizmente, isso não corresponde à realidade, como tenta representar a figura abaixo, que descreve uma hierarquia de memória: para cada elemento, estão indicados os tamanhos típicos disponíveis para armazenamento de informação e o tempo típico de acesso à informação armazenada.
Como pode ser visto no diagrama acima, registradores do processador e memória cache operam com tempos distintos, o mesmo ocorrendo com a memória principal com relação à memória cache, e com a memória secundária com relação à memória principal.
Considerando as informações acima apresentadas, responda às seguintes perguntas.
a) Que características um programa deve ter para que o uso de memória cache seja muito vantajoso?
R: O programa deve ter trechos pequenos que sejam executados várias vezes, e os dados devem estar localizados próximos uns dos outros OU dados e instruções devem ter localidade espacial (próximos uns dos outros) e localidade temporal (serem usados várias vezes em um certo instante de tempo).
b) Se registradores do processador e a memória cache operassem com os mesmos tempos de acesso, ainda haveria vantagem em se utilizar a memória cache?