Što je prijevodni lookaside buffer?

Središnja procesorska jedinica računala (CPU) ima sustav predmemorije koji se naziva translacijski lookaside buffer (TLB), koji je odgovoran za prevođenje fizičke memorije u virtualnu memoriju. Ovo je zaseban sustav predmemorije, jer je brže za CPU da pretraži ovu predmemoriju za memorijske adrese nego da je smjesti u uobičajenu predmemoriju. Za pohranjivanje memorijskih adresa, TLB koristi unose tablice stranica, tvoreći mapu između adresa virtualne i fizičke memorije. Kada se koristi međuspremnik prijevoda lookaside, može postojati ili TLB pogodak ili promašaj, što znači da je memorija pronađena ili nepoznata. Računala mogu imati nekoliko različitih TLB razina za pohranu više informacija o memorijskoj adresi.

Kada se fizička memorija pretvori u virtualnu memoriju, stvaranje njezine predmemorije olakšava računalu pronalaženje stvarnog memorijskog mjesta. Ove informacije mogu se smjestiti u glavnu predmemoriju CPU-a, ali to predstavlja nekoliko problema. Za pohranu ovih podataka potrebno je koristiti nekoliko različitih razina pristupa, što usporava cijeli proces. Međuspremnik za gledanje prijevoda pregledava ove razine i pomaže CPU-u da pronađe ispravno memorijsko mjesto kako bi se podaci mogli otvoriti.

Međuspremnik za gledanje prijevoda koristi sustav tablice stranica koji kategorizira područja prevođenja virtualne memorije. Kada se fizička memorija pretvori u virtualnu memoriju, na primjer kada se pohranjuje dokument ili se koristi program, TLB pohranjuje ovaj prijevod. TLB ne pohranjuje samu informaciju, već mjesto na kojem se memorija nalazi, što ga čini memorijskim učinkovitim.

Kako bi pronašao datoteku ili bilo što u arhitekturi memorije, CPU pretražuje računalo. Prvi korak CPU-a je korištenje međuspremnika za gledanje prijevoda da vidi je li memorija predmemorana; ovo proizvodi ili pogodak ili promašaj. TLB pogodak znači da je fizička memorija spremljena u predmemoriju i može se brzo pronaći. Promašaj TLB-a znači da fizička memorija nije u predmemoriji, a CPU mora pregledati sve tablice stranica kako bi pronašao memoriju, proces koji je memorijski neučinkovit i oduzima dodatno vrijeme.

Većina računala dolazi s nekoliko razina međuspremnika bez prevođenja. Najniža razina sadrži najmanju količinu informacija, ali je i najbrža. Kada ima previše informacija za prvu razinu, ona se prelijeva na više razine. Ove razine nisu tako brze, ali su još uvijek brže od CPU-a koji traži adresu fizičke memorije kroz sve tablice stranica.