Co to jest mapowanie bezpośrednie?

Mapowanie bezpośrednie to metoda przechowywania informacji zapewniająca łatwy dostęp na komputerze. Ostatnio używane informacje są przechowywane w pamięci podręcznej, dzięki czemu komputer może szybko znaleźć informacje, gdy następnym razem będą potrzebne. W programowaniu komputerowym pamięć podręczna to niewielka część pamięci o dostępie swobodnym (RAM), która jest odkładana w celu łatwego pobierania danych. W przypadku mapowania bezpośredniego każdemu fragmentowi danych w pamięci przypisywane jest miejsce w pamięci podręcznej, które jest współdzielone z innymi fragmentami danych. Dane z pamięci podręcznej są stale nadpisywane, ponieważ potrzebne są nowe dane.

Pamięć podręczna jest zorganizowana w linie. Każdy wiersz jest wystarczająco duży, aby pomieścić jeden blok danych i tag, aby określić, skąd pochodzą dane. Gdy użytkownik żąda fragmentu danych, komputer najpierw skanuje pamięć podręczną, aby sprawdzić, czy znajdują się tam informacje. Jeśli tak, informacja jest zwracana użytkownikowi. Jest to znane jako trafienie w pamięci podręcznej, które jest szybsze niż pobieranie danych z ich pierwotnej lokalizacji.

Odsetek żądań, które skutkują trafieniami w pamięci podręcznej, nazywa się współczynnikiem trafień. Jeśli żądane przez użytkownika dane nie znajdują się w pamięci podręcznej, komputer znajdzie je w pamięci. Kopia danych zostanie umieszczona w pamięci podręcznej, aby można ją było szybko znaleźć następnym razem, gdy użytkownik o to poprosi, teoretycznie zwiększając współczynnik trafień. Wszystko to dzieje się za kulisami. Użytkownik nie wie, czy otrzymane dane pochodzą z pamięci podręcznej czy z pamięci.

Mapowanie bezpośrednie to jedna z metod decydowania, gdzie będą przechowywane bloki pamięci w pamięci podręcznej. Każdemu blokowi pamięci przypisywana jest określona linia w pamięci podręcznej. Ponieważ pamięć podręczna jest mniejsza niż pamięć, wiele bloków będzie współdzielić jedną linię w pamięci podręcznej. Jeśli linia jest już pełna, kiedy trzeba do niej wpisać nowy blok, stary blok zostanie nadpisany.

Chociaż bezpośrednie mapowanie jest bardzo prostym i łatwym sposobem zaprojektowania pamięci podręcznej, stwarza pewne problemy. Jeśli program stale uzyskuje dostęp do wielu bloków danych, które współdzielą ten sam wiersz w bezpośredniej pamięci podręcznej mapowania, wiersz będzie często przepisywany. Powoduje to wiele chybień, ponieważ dane, których potrzebuje komputer, z mniejszym prawdopodobieństwem są danymi, które aktualnie znajdują się w tej linii pamięci podręcznej. Tak więc mapowanie bezpośrednie ma niższy współczynnik trafień niż inne modele mapowania pamięci podręcznej.