O que é mapeamento direto?

O mapeamento direto é um método de armazenar informações para facilitar o acesso em um computador. As informações usadas recentemente são armazenadas em um cache para que o computador possa encontrar rapidamente as informações na próxima vez que forem necessárias. Na programação de computadores, um cache é uma pequena seção de memória de acesso aleatório (RAM) que é reservado com o objetivo de recuperar dados facilmente. Com o mapeamento direto, cada dados na memória recebe um espaço no cache, que compartilha com outros dados. Os dados do cache estão sendo constantemente substituídos à medida que novos dados são necessários.

Um cache é organizado em linhas. Cada linha é grande o suficiente para armazenar um bloco de dados e uma tag para identificar de onde vieram os dados. Quando um usuário solicita uma peça de dados, o computador primeiro digitaliza o cache para ver se as informações estão lá. Se for, as informações são devolvidas ao usuário. Isso é conhecido como um acerto de cache, que é mais rápido do que recuperar os dados de seu local original.

A porcentagem de solicitações que resulta em hits de cache é chamada de taxa de acerto. Se os dados solicitados pelo usuário não estiverem no cache, o computador o encontrará na memória. Uma cópia dos dados será depositada no cache para que possam ser encontrados rapidamente na próxima vez que o usuário solicitar, em teoria aumentando a taxa de acerto. Tudo isso acontece nos bastidores. O usuário não sabe se os dados recebidos vieram do cache ou da memória.

O mapeamento direto é um método para decidir onde os blocos de memória serão armazenados no cache. Cada bloco de memória recebe uma linha específica no cache. Como o cache é menor que a memória, vários blocos compartilharão uma única linha no cache. Se uma linha já estiver cheia quando um novo bloco precisar ser gravado para ela, um bloco antigo será substituído.

Embora o mapeamento direto seja uma maneira muito simples e fácil de projetar um cache, ela apresenta alguns problemas. Se um programa acessar continuamente o MultiBlocos de dados que compartilham a mesma linha em um cache de mapeamento direto, a linha será reescrita com frequência. Isso resulta em muitas erros, porque os dados que o computador precisa tem menos probabilidade de serem os dados que estão realmente nessa linha de cache no momento. Portanto, o mapeamento direto tem uma taxa de acerto mais baixa do que outros modelos de mapeamento de cache.

OUTRAS LÍNGUAS

Este artigo foi útil? Obrigado pelo feedback Obrigado pelo feedback

Como podemos ajudar? Como podemos ajudar?