Mi az a Fordítási Lookaside Buffer?

A CPU-k hihetetlenül összetett vadállatok. Rengeteg egymáshoz kapcsolódó alkatrész létezik, amelyeknek tökéletes összhangban kell működniük ahhoz, hogy elérjük az általunk látott teljesítményszintet. A memória teljesítménye kulcsfontosságú tényező a modern CPU-k teljesítményében, különösen korlátozó tényezőként.

Miért olyan fontos a memória sebessége?

A CPU-k hihetetlenül gyorsak, a legújabb generációk megfelelő hűtés mellett 5,7 GHz-en működnek. Ez lehetővé teszi számukra, hogy másodpercenként 5,7 milliárd műveletet hajtsanak végre. E műveletek közül sok olyan műveletet hajt végre bizonyos típusú adatokon, amelyeket a memóriában kell tárolni.

A fő rendszermemória, az úgynevezett RAM, szintén nagyon gyors. Sajnos a CPU-n kívül bármihez képest nagyon gyors. A modern csúcskategóriás RAM abszolút késleltetése 60 nanoszekundum nagyságrendű. Sajnos ez nagyjából 342 CPU-ciklust jelent. A memória-hozzáférés felgyorsítása érdekében CPU-gyorsítótárat használnak, amely dinamikusan gyorsítótárazza az adatokat. Ez a gyorsítótár magán a CPU-n található, és SRAM-cellákat használ DRAM-cellák helyett, így sokkal gyorsabb. Sajnos a CPU gyorsítótár is sokkal kisebb, mint a rendszer RAM, általában nem éri el a 100 MB-ot sem. Ennek ellenére kicsi mérete ellenére a többszintű CPU-gyorsítótár rendszer jelentősen növeli a rendszer teljesítményét.

Itt jön a virtuális memória, hogy mindent összezavarjon

A modern számítógépek egy virtuális memóriának nevezett rendszert használnak. Ahelyett, hogy fizikai memóriacímeket rendelnének a folyamatokhoz, virtuális memóriacímeket használnak. Minden folyamatnak megvan a saját virtuális memória címtere. Ennek két előnye van. Először is, könnyen elválasztja az egyik folyamathoz tartozó memóriát és a másikhoz tartozó memóriát. Ez segít megelőzni azokat a támadásokat, amelyek során a rosszindulatú szoftverek adatokat olvasnak ki más szoftverek memóriájából, és érzékeny információkhoz juthatnak hozzá. A fizikai memória szerkezetét is elrejti a folyamat elől. Ez lehetővé teszi a CPU számára, hogy a ritkán használt memória biteket áthelyezze a tárolón lévő lapozófájlba anélkül, hogy szükségszerűen lecsatolná a virtuális RAM-ról. Ez lehetővé teszi a számítógép számára, hogy óvatosan kezelje azokat a forgatókönyveket, amikor több RAM-ra van szükség, mint amennyi fizikailag rendelkezésre áll. Virtuális memória nélkül,

Sajnos, ha virtuális memóriacímeket használ, a számítógépnek ténylegesen le kell fordítania ezeket a virtuális memóriacímeket fizikai memóriacímekre az adatok olvasásához. Ehhez egy táblázatra van szükség, amely tárolja a virtuális memóriacímek összes fordítását fizikai memóriacímekre. Ennek mérete közvetlenül függ a használt RAM mennyiségétől. Általában meglehetősen kicsi, legalábbis a rendszer RAM kapacitásához képest. Sajnos, ha a virtuális címek és a fizikai címek közötti fordítást a RAM-ban tárolja, két kérést kell küldenie a RAM-nak minden RAM-hoz intézett kéréshez. Az egyik a kérendő fizikai cím megkeresésére, a másik pedig az adott hely tényleges eléréséhez.

Adja meg a fordítási kinézeti puffert

A probléma megoldása a fordítási tábla gyorsabb tárolása valahol. A CPU-gyorsítótár legalábbis sebesség szempontjából remekül passzolna a számlához. Ezzel azonban az a probléma, hogy a CPU gyorsítótár kicsi, és már erősen kihasznált. A tábla nemcsak hogy nem fér el a gyorsítótárban, de ez megzavarná a már amúgy is teljesítmény-meghatározó használatát.

Természetesen, ha a gyorsítótár elve már működik a memóriaelérésnél, miért ne ismételje meg a fordítási táblázatban? És pontosan ez a Translation Lookaside Buffer vagy a TLB. Ez egy nagy sebességű gyorsítótár a legutóbbi címfordításokhoz. Nem elég nagy ahhoz, hogy az egész táblázatot tárolja, de kis mérete miatt nagyon gyorsan, egyetlen órajelen belül képes reagálni.

Minden memóriakérelem a TLB-n keresztül megy. Ha TLB-találat érkezik, az megadhatja a tényleges kérés fizikai memóriacímét, általában egyetlen késleltetési ciklus hozzáadásával. Ha TLB hiányzik, a keresést a fő memóriából kell végrehajtani. A TLB körülbelül 5 ciklusos kihagyása esetén egy kis teljesítménybüntetés jár, amely veszteséget több mint elhomályosít a memóriaelérési késleltetés. Amint a címfordítás lekérésre került a rendszer RAM-ból, a TLB-be kerül, majd a kérés azonnali TLB találattal megismétlődik.

Megjegyzés: Különféle sémák léteznek a TLB kilakoltatására. Néhányan First In, First Out vagy FIFO sémát használhatnak. Mások a legkevésbé gyakran használt vagy LFU sémát használhatnak.

Abban a ritka esetben, amikor nincs bejegyzés a címfordítási táblázatban, oldalhiba keletkezik, mivel a kért adatok nincsenek a RAM-ban. Az operációs rendszernek ezután kezelnie kell a hibát, és át kell vinnie az adatokat a tárolóból a RAM-ba, mielőtt a kérés folytatódhat.

Következtetés

A Translation Lookaside Buffer vagy TLB egy nagy sebességű CPU gyorsítótár, amely a legutóbbi címfordítások gyorsítótárazására szolgál a rendszer RAM-jában lévő oldalfájlból. Erre azért van szükség, mert a virtuális memóriarendszerek, amint azt minden modern számítógépben megvalósítják, két kérést tesznek szükségessé a RAM felé minden RAM-kéréshez. Az egyik a virtuális memória címének fizikai memóriacímmé való lefordításához, a másik pedig a fizikai cím tényleges eléréséhez. A legutóbbi fordítások gyorsítótárazásával a memória késleltetése jelentősen csökkenthető a TLB találatoknál.

Gondoskodni kell arról, hogy a gyorsítótárazott fordítások relevánsak legyenek az éppen aktív folyamat szempontjából. Mivel minden folyamatnak más virtuális címtere van, nem használhatók fel újra. Ennek szigorú korlátozása volt az oka a Meltdown sebezhetőségének.


Leave a Comment

Hogyan csatlakoztassuk a Windows 11 laptopot projektorhoz/TV-hez

Hogyan csatlakoztassuk a Windows 11 laptopot projektorhoz/TV-hez

Olvassa el ezt a cikket az egyszerű, lépésről lépésre történő folyamatról, amely a Windows 11 és Windows 10 operációs rendszeren történő laptop projektor vagy TV-hez való csatlakoztatásához szükséges.

3D Nyomtatás Alapjai: Karbantartási Tippjei a 3D Nyomtatójához

3D Nyomtatás Alapjai: Karbantartási Tippjei a 3D Nyomtatójához

A 3D nyomtatók karbantartása nagyon fontos a legjobb eredmények eléréséhez. Íme néhány fontos tipp, amit érdemes megjegyezni.

Mi a teendő, ha a Powerbeats Pro nem töltődik az ügyben?

Mi a teendő, ha a Powerbeats Pro nem töltődik az ügyben?

Ha a Powerbeats Pro nem töltődik, használjon másik áramforrást és tisztítsa meg a fülhallgatókat. Töltés közben hagyja nyitva az ügyet.

Canon Pixma MG5220: Szkennelés Tinta Nélkül

Canon Pixma MG5220: Szkennelés Tinta Nélkül

Hogyan lehet engedélyezni a szkennelést a Canon Pixma MG5220-on, ha kifogyott a tinta.

10 Legjobb NAS Tárolóeszköz Otthoni és Professzionális Használatra

10 Legjobb NAS Tárolóeszköz Otthoni és Professzionális Használatra

Akár otthoni, akár irodai NAS-t keresel, nézd meg ezt a legjobb NAS tárolóeszközök listáját.

3D Nyomtatás Alapjai: Kötelező Karbantartási Ellenőrző Lista

3D Nyomtatás Alapjai: Kötelező Karbantartási Ellenőrző Lista

A gépezeted jó állapotban tartása elengedhetetlen. Íme néhány hasznos tipp a 3D nyomtatód csúcsformában tartásához.

Mi az a buborék memória?

Mi az a buborék memória?

A buborékmemória egy nem felejtő mágneses memória formája, amely a 70-es évek elején került kereskedelmi forgalomba. Ismerje meg a buborékmemória előnyeit és történelmét!

Az iPhone feloldása jelszó vagy számítógép nélkül

Az iPhone feloldása jelszó vagy számítógép nélkül

Elfelejtette iPhone-ja zárolási képernyőjének jelszavát? Ebből a cikkből megtudhatja, hogyan oldhatja fel az iPhone feloldását jelszó vagy számítógép nélkül.

Windows 10 laptop csatlakoztatása projektorhoz/TV-hez

Windows 10 laptop csatlakoztatása projektorhoz/TV-hez

Minden, amit tudnia kell a Microsoft Windows 10 laptop TV-hez vagy projektorhoz történő csatlakoztatásáról.

Fájlok elhelyezése a Samsung biztonságos mappába

Fájlok elhelyezése a Samsung biztonságos mappába

A Samsung Secure Folder érzékeny információkat véd, mint jegyzetek, alkalmazások, fájlok, fényképek és videók. Védd adataidat a Samsung Knox segítségével!