Vertaalzoekbuffer (TLB) is een klein, snel geheugen dat recent gebruikte vertalingen van virtuele geheugenadressen naar fysieke geheugenadressen opslaat. Het dient als cache tussen de CPU en het hoofdgeheugen, waardoor de tijd die nodig is om virtuele adressen naar fysieke adressen te vertalen, wordt verkort.
De CPU controleert eerst of het opgevraagde virtuele adres aanwezig is in de TLB. Als het een match vindt, hoeft het het hoofdgeheugen niet te raadplegen. Als de TLB niet over de vereiste invoer beschikt, gaat de CPU naar het hoofdgeheugen voor adresvertaling. Het nieuw vertaalde item wordt vervolgens toegevoegd aan de TLB voor snellere toegang in de toekomst.
Door recentelijk geopende vertalingen in het cachegeheugen op te slaan, verbetert de TLB de algehele prestaties van virtuele geheugensystemen aanzienlijk. Het vermindert het aantal keren dat de CPU toegang moet krijgen tot het langzamere hoofdgeheugen voor adresvertalingen. Als gevolg hiervan minimaliseert het de systeemlatentie en maakt het een snellere uitvoering van programma's mogelijk.
TLB bestaat uit het volgende:
- TLB-inzendingen :Elke invoer in de TLB bestaat uit een virtueel paginanummer, een fysiek paginaframenummer en extra statusbits.
- TLB-tags :De virtuele paginanummers in de TLB-vermeldingen worden gebruikt als tags voor snelle identificatie van overeenkomende virtuele adressen.
- TLB-beheerseenheid :Deze eenheid is verantwoordelijk voor het beheer van de TLB, inclusief het toevoegen van nieuwe vermeldingen en het afhandelen van cachemissers wanneer het gevraagde adres niet aanwezig is.
De organisatie en het beheer van de TLB kunnen variëren afhankelijk van de specifieke hardware-implementatie en het besturingssysteem.
TLB-hit: Wanneer de CPU de vereiste vertaling in de TLB vindt, staat dit bekend als een TLB-hit . In dit geval is het fysieke adres onmiddellijk beschikbaar en kan de CPU doorgaan met de geheugentoegang zonder te wachten op een langzamere leesbewerking van het hoofdgeheugen.
TLB mevrouw: Als het gevraagde adres niet aanwezig is in de TLB, wordt dit een TLB-misser genoemd . In deze situatie raadpleegt de CPU de paginatabellen of andere geheugenbeheergegevensstructuren in het hoofdgeheugen om adresvertaling uit te voeren. De vertaalde vermelding wordt vervolgens toegevoegd aan de TLB voor toekomstig gebruik.
Door de meest gebruikte vertalingen in de TLB dynamisch bij te houden, worden TLB-missers effectief geminimaliseerd en worden de prestaties van virtuele geheugensystemen verbeterd. |