Betriebssystem und Hardware
Was ist der Hauptgrund dafür, die Seitentabelle mehrstufig (hierarchisch) statt einstufig auszulegen?
- AWeil Tabellen für ungenutzte Bereiche entfallen können und Speicher für die Seitentabelle gespart wird
- BWeil sich die Zahl der bei jeder Adressumsetzung gelesenen Tabellen verringert und die Behandlung von TLB-Misses schneller wird
- CWeil die Kapazität des physischen Speichers größer als der virtuelle Adressraum werden kann
Antwort und Erläuterung anzeigen
Antwort: A. Weil Tabellen für ungenutzte Bereiche entfallen können und Speicher für die Seitentabelle gespart wird
Eine einstufige Seitentabelle benötigt unabhängig von der Nutzung Einträge für alle Seiten des virtuellen Adressraums und wird in 64-Bit-Umgebungen riesig. Bei mehrstufiger Auslegung werden nur die unteren Tabellen für genutzte Bereiche angelegt, und ungenutzte Bereiche lassen sich durch ungültige Einträge in der oberen Tabelle kennzeichnen, sodass der Speicherbedarf der vom Programm genutzten Menge entspricht. Dafür steigt bei einem TLB-Miss die Zahl der zu durchlaufenden Tabellen um die Stufenzahl, und es wird langsamer. Mit der Größe des physischen Speichers hat das nichts zu tun.