Weil das nachschlagen der Frames hinter Pages oft passiert und langsam ist, werden oft genutzte Pages in einen Assoziativen Cache zwischengespeichert. Dieser Speicher heißt in diesem Zusammenhang auch Translation Look Aside Buffer (TLB). Wird das zugehörige Frame einer Page in diesem Speicher zwischengespeichert, haben wir glück und können schnell den Speicherbereich aufrufen. Falls nicht, haben wir einen TLB miss und müssen wie gewohnt im langsamen Page Table nachschauen.

Schätzung der effektiven Zugriffszeit

Angenommen, wir haben eine Cache-Trefferquote , ein assoziativer Lookup dauert Zeiteinheiten und ein Memory Cycle benötigt eine Mikrosekunde. Dann ist die effektive Zugriffszeit (EAT)

Reichweite des TLB

Die Kapazität des assoziativen Speichers ist durch den TLB begrenzt:

Idealerweise passt das Working Set eines Prozesses in den assoziativen Speicher, andernfalls lassen sich Page Faults folgendermaßen verhindern:

  • Page Size vergrößern (führt zu einer Zunahme an interner Fragmentierung)
  • Unterschiedliche Page Sizes zulassen (Prozess-speziefisches Paging, z.B. angepasst für Kernel-Prozesse)