Pamięć cache (pamięć podręczna) jest elementem hierarchii pamięci komputera. Jej główny cel to zwiększenie wydajności poprzez skrócenie średniego czasu dostępu do danych i instrukcji.
Mechanizm działania opiera się na zjawisku lokalności odniesień:
- lokalność czasowa – jeśli procesor użył danych przed chwilą, istnieje duża szansa, że użyje ich ponownie wkrótce,
- lokalność przestrzenna – jeśli procesor odwołuje się do pewnego obszaru pamięci, często za moment odwoła się do sąsiednich adresów.
Dlatego stwierdzenie, że cache "ma na celu poprawę szybkości dostępu do tych informacji, które przypuszczalnie będą potrzebne w najbliższej przyszłości", jest poprawne: cache przechowuje "najbardziej prawdopodobne" dane w szybszej pamięci bliżej CPU.
Dlaczego pozostałe stwierdzenia są błędne?
- Teza o "pamięci na dysku jako pliku wymiany" dotyczy pamięci wirtualnej/stronicowania (swap/pagefile), czyli mechanizmu używającego pamięci masowej do rozszerzenia przestrzeni adresowej RAM. To nie jest cache procesora.
- Stwierdzenie, że wszystkie poziomy cache muszą mieć ten sam rozmiar, jest nieprawdziwe: poziomy cache (np. bliższy rdzeniowi i dalszy) w praktyce różnią się pojemnością i organizacją, bo mają inne zadania w hierarchii.
- Teza, że cache ma dłuższy czas dostępu niż pamięć operacyjna, odwraca zależność. Cache jest projektowana jako szybsza (krótsze opóźnienie) od RAM, kosztem mniejszej pojemności i wyższej ceny w przeliczeniu na bit.
Wskazówka egzaminacyjna: gdy w odpowiedzi pojawia się "przyspieszenie dostępu" i "dane potrzebne za chwilę", to typowy opis cache. Gdy pojawia się "plik wymiany" i "dysk", to zwykle chodzi o pamięć wirtualną, a nie cache.