Page table

Page table

Seitentabellen sind Teile von Prozessen, welche der Transformation von virtuellen in physische Seitenrahmen dienen. Die optimale Seitengröße ist ein Kompromiss zwischen Häufigkeit von Seitenwechseln und Größe der Tabelle. In der Praxis ist eine Größe zwischen 2 und 32 kByte üblich.

Inhaltsverzeichnis

Einstufige Seitentabelle

Schematische Darstellung der einstufigen Adressumsetzung

Die Adressumsetzung mit Hilfe einer einstufigen Seitentabelle geschieht durch Interpretation der n höherwertigen Bits einer virtuellen Adresse als Seitennummer der angeforderten Speicherseite und der Verwendung der m niederwertigen Bits als Offset. Die Seitennummer bestimmt dabei ausgehend von der Basisadresse der Seitentabelle, welche in einem Register der Memory Management Unit gehalten wird, denjenigen Eintrag in der Seitentabelle, aus dem die Basisadresse der nötigen realen Speicherseite abzulesen ist. Des Weiteren beinhaltet die Seitentabelle auf den höherwertigen Bits Statusinformationen über die Speicherseite, die beispielsweise Auskunft geben, ob sich die Speicherseite im RAM befindet oder ob sie seit dem letzten Zugriff verändert wurde. Die aus der Seitentabelle ausgelesene Basisadresse der realen Speicherseite zusammen mit dem unveränderten Offset ergeben die reale Adresse.

Mehrstufige Seitentabelle

Schematische Darstellung der mehrstufigen Adressumsetzung

Die Adressumsetzung mit Hilfe einer k-stufigen Seitentabelle geschieht durch Aufteilung einer virtuellen Adresse in k*n höherwertige Bits als Seitentabellenverweise und m niederwertige Bits als Offset. Mit dem k-ten Verweis in der virtuellen Adresse wird aus der k-ten Seitentabelle die Basisadresse der Seitentabelle der Stufe k+1 ausgelesen. Die letzte Stufe enthält dann den tatsächlichen Verweis auf die reale Basisadresse. Die aus der letzten Stufe der Seitentabellen ausgelesene Basisadresse der realen Speicherseite zusammen mit dem unveränderten Offset ergeben die reale Adresse.

Invertierte Seitentabelle

Invertierte Seitentabelle

Insbesondere einstufige, aber auch mehrstufige Seitentabellen benötigen sehr viel Speicherplatz, nur um die Seitentabelle im Speicher abzulegen. Mit dem Ansatz der invertierten Seitentabelle beseitigt man dieses Problem. Es wird in der Seitentabelle nicht mehr ein Eintrag pro virtueller Seite angelegt, sondern nur noch je ein Eintrag pro realer Speicherseite. Der Zugriff auf diese Tabelle benötigt nun jedoch einen Suchvorgang, um die virtuelle Adresse in der gesamten Seitentabelle zu finden und die zugehörige reale Adresse auszulesen. Häufig wird das Suchen in der invertierten Seitentabelle durch das Vorschalten einer Hashtabelle beschleunigt.

Da sich keine Informationen über ausgelagerte Seiten in der invertierten Seitentabelle finden, ist bei einem Seitenfehler der Rückgriff auf eine „normale“ Seitentabelle notwendig.

Seitenfehler

Bei jedem Verfahren kann es natürlich passieren, dass die angeforderte virtuelle Adresse sich in einer nicht im Arbeitsspeicher befindlichen Speicherseite befindet, sondern erst durch Paging vom Hintergrundspeicher in den Arbeitsspeicher geladen werden muss (engl.: Demand Paging). Die Memory Management Unit signalisiert dies, sobald sie in den Statusbits einer Seitentabelle einen Ungültig Eintrag vorfindet, indem sie einen so genannten Seitenfehler (Page Fault) auslöst.

Weblinks


Wikimedia Foundation.

Игры ⚽ Поможем написать курсовую

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Page table — A page table is the data structure used by a virtual memory system in a computer operating system to store the mapping between virtual addresses and physical addresses. Virtual addresses are those unique to the accessing process. Physical… …   Wikipedia

  • Page (computer memory) — Page size redirects to this article. For information on paper see Paper size A page, memory page, or virtual page is a fixed length contiguous block of virtual memory that is the smallest unit of data for the following: memory allocation… …   Wikipedia

  • Page replacement algorithm — This article is about algorithms specific to paging. For outline of general cache algorithms (e.g. processor, disk, database, web), see Cache algorithms. In a computer operating system that uses paging for virtual memory management, page… …   Wikipedia

  • Page (computing) — In a context of computer virtual memory, a page, memory page, or virtual page is a fixed length block of main memory, that is contiguous in both physical memory addressing and virtual memory addressing. A page is usually a smallest unit of data… …   Wikipedia

  • table — 1 / teIbFl/ noun 1 FURNITURE a piece of furniture with a flat top supported by legs: a kitchen table | table lamp (=made to be put on a small table) | book a table (=ask a restaurant to keep a table available for you): I ve booked a table for two …   Longman dictionary of contemporary English

  • Page Attribute Table — The Page Attribute Table (also know as Page Allocation Table) is an extension to the page table format of certain x86 and x86 64 microprocessors. Like Memory Type Range Registers (MTRRs), they allow for fine grained control over how areas of… …   Wikipedia

  • Page Size Extension — In computing, Page Size Extension (PSE) refers to a feature of x86 processors that allows for pages larger than the traditional 4 KiB size. It was introduced in the original Pentium processor, but it was only publicly documented by Intel with the …   Wikipedia

  • table — ta|ble1 W1S1 [ˈteıbəl] n ▬▬▬▬▬▬▬ 1¦(furniture)¦ 2¦(sport/game)¦ 3¦(list)¦ 4 on the table 5 turn the tables (on somebody) 6 under the table 7¦(maths)¦ 8¦(group)¦ ▬▬▬▬▬▬▬ [Date: 1100 1200; …   Dictionary of contemporary English

  • table — I UK [ˈteɪb(ə)l] / US noun [countable] Word forms table : singular table plural tables *** 1) a piece of furniture that consists of a flat surface held above the floor, usually by legs the kitchen/dining room table They sat around a long table in …   English dictionary

  • table — ta|ble1 [ teıbl ] noun count *** 1. ) a piece of furniture that consists of a flat surface held above the floor, usually by legs: the kitchen/dining room table They sat around a long table in the conference room. a ) a table in a restaurant: You… …   Usage of the words and phrases in modern English

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”