Skip to main content

Vad är en översättning av lookaside -buffert?

En Computers Central Processing Unit (CPU) har ett cachesystem som kallas Translation Lookaside Buffer (TLB), som ansvarar för att översätta fysiskt minne till virtuellt minne.Detta är ett separat cachesystem, eftersom det är snabbare för CPU att söka efter denna cache efter minnesadresser än att placera den i den vanliga cachen.För att lagra minnesadresser använder TLB sidtabellposter och bildar en karta mellan virtuella och fysiska minnesadresser.När översättningen lookaside -buffert används kan det antingen finnas en TLB -hit eller miss, vilket innebär att minnet har hittats eller är okänt.Datorer kan komma med flera olika TLB -nivåer för att lagra mer minnesadressinformation.

När fysiskt minne förvandlas till virtuellt minne, vilket skapar en cache av det gör det enkelt för datorn att hitta den faktiska minnesplaceringen.Denna information kan placeras i huvud CPU -cachen, men det ger flera problem.För att lagra dessa data måste flera olika åtkomstnivåer användas, vilket bromsar hela processen.En översättning av lookaside -buffert ser runt dessa nivåer och hjälper CPU att hitta rätt minnesplats så att data kan öppnas.

Översättningen Lookaside -buffert använder ett sidtabellsystem som kategoriserar de virtuella minnesöversättningsområdena.När fysiskt minne förvandlas till virtuellt minne, till exempel när ett dokument lagras eller ett program används, lagrar TLB denna översättning.TLB lagrar inte själva informationen men där minnet är beläget, vilket gör det minne effektivt.

För att hitta en fil, eller något i minnesarkitekturen, söker CPU genom datorn.CPU: s första steg är att använda översättningen lookaside -buffert för att se om minnet har cachat;Detta producerar antingen en hit eller miss.En TLB -hit innebär att det fysiska minnet är cachat och kan hittas snabbt.En TLB -fröken betyder att det fysiska minnet inte är cachat, och CPU måste titta igenom alla sidtabeller för att hitta minnet, en process som är minne ineffektiv och tar extra tid.

De flesta datorer har flera översättningsansvariga buffertnivåer.Den lägsta nivån har den minsta mängden information, men är också den snabbaste.När det finns för mycket information för den första nivån att hålla, smälter den in i de högre nivåerna.Dessa nivåer är inte lika snabba men är fortfarande snabbare än CPU -sökningen genom alla sidtabeller för den fysiska minnesadressen.