Hardware Reference
In-Depth Information
1
50
10
3
1
c
n
q
Abbildung 8.5. Struktur eines Page Table Pointer (PTP). Das erste bit muss stets 1 sein
8.5
8.5 Schnelle Adressumsetzung - Translation Lookaside
Buffer
Damit die bei jedem Speicherzugriff erforderliche Adressumsetzung moglichst
schnell ablauft, verfugen Prozessoren uber spezielle caches, in denen sie die
haufig benutzten PTE oder PTP speichern konnen. Diese Caches heißen
Translation Lookaside Buffer , kurz TLB. Abbildung 8.7 zeigt einen typischen
Translation Lookaside Buffer. Wie bei einem Cache wird ein Teil der Spei-
cheradresse verwendet, um einen Eintrag zu finden. Bei MMIX sind das die
Segmentnummer und die Seitennummer. Der TLB liefert dazu den Wert a ,
also den Startpunkt der Seite im physischen Speicher. Der Abstand der zu
ubersetzenden Adresse zum Anfang der Seite (Offset) muss nicht ubersetzt
werden. Er wird vorab aus der virtuellen Adresse extrahiert. Nach dem Uber-
setzungsvorgang wird der im TLB gefundene Eintrag um diesen Offset erwei-
tert, womit die physische Adresse komplett ist.
Ein TLB muss allerdings auch andere Informationen speichern, namlich die
Adressraumnummer und die Zugriffsrechte auf die Seite.
Nur wenn ein PTE zur Umsetzung einer Adresse im TLB nicht vorgefunden
wird, ist es erforderlich, vor dem eigentlichen Speicherzugriff PTP und PTE
aus dem Speicher zu lesen. Dieser Vorgang kann entsprechend lange dauern.
8.5.1 Translation Lookaside Buffer bei MMIX
Der MMIX Meta-Simulator verfugt uber zwei TLB: Je einen fur Code und fur
Daten. Wie Caches so lassen sich auch Translation Lookaside Buffer konfi-
gurieren. Allerdings lassen sie sich nicht vollstandig abschalten. Mindestens
einen Eintrag muss jeder TLB aufnehmen konnen. Ansonsten werden sie
ebenfalls durch die Parameter Blockanzahl und Assoziativitatsgrad beschrie-
ben sowie durch eine Ersetzungsstrategie.
8.5.2 Virtuelle Adressierung in der Praxis
Außer fur den Embedded-Bereich werden alle Prozessoren mit Memory Ma-
nagement Unit ausgestattet. Teil der MMU ist ein Translation Lookaside
Buffer. Auf Systeme ohne MMU lasst sich ein modernes Betriebssystem wie
Linux oder Microsoft Windows nicht portieren.
Das Konzept, fur den Eigentumer einer Seite Zugriffsrechte einzufuhren, hat
bei den Mainstream-Prozessoren erst im Jahr 2004 Einzug gehalten. Insbe-
Search WWH ::




Custom Search