Seitenzustand
Die Seiten des virtuellen Adressraums eines Prozesses können sich in einem der folgenden Zustände befinden.
State | Beschreibung |
---|---|
Kostenlos | Die Seite ist weder committet noch reserviert. Auf die Seite kann der Prozess nicht zugreifen. Es ist verfügbar, um reserviert, committet oder gleichzeitig reserviert und committet zu werden. Der Versuch, aus einer freien Seite zu lesen oder darauf zu schreiben, führt zu einer Zugriffsverletzungs-Ausnahme. Ein Prozess kann die VirtualFree- oder VirtualFreeEx-Funktion verwenden, um reservierte oder committete Seiten seines Adressraums freizugeben und in den freien Zustand zurückzugeben. |
Reserviert | Die Seite wurde für die zukünftige Verwendung reserviert. Der Adressbereich kann nicht von anderen Zuordnungsfunktionen verwendet werden. Auf die Seite kann nicht zugegriffen werden, und es ist kein physischer Speicher zugeordnet. Es ist verfügbar, um committet zu werden. Ein Prozess kann die VirtualAlloc - oder VirtualAllocEx-Funktion verwenden, um Seiten seines Adressraums zu reservieren und später die reservierten Seiten zu committen. Es kann VirtualFree oder VirtualFreeEx verwenden, um committete Seiten zu deaktivieren und in den reservierten Zustand zurückzugeben. |
Committet | Speichergebühren wurden aus der Gesamtgröße von RAM- und Pagingdateien auf dem Datenträger zugeordnet. Auf die Seite kann zugegriffen werden, und der Zugriff wird durch eine der Speicherschutzkonstanten gesteuert. Das System initialisiert und lädt jede committete Seite nur während des ersten Lese- oder Schreibversuchs auf dieser Seite in den physischen Arbeitsspeicher. Wenn der Prozess beendet wird, gibt das System den Speicher für committete Seiten frei. Ein Prozess kann VirtualAlloc oder VirtualAllocEx verwenden, um physische Seiten aus einer reservierten Region zu committen. Sie können seiten gleichzeitig reservieren und committen. Die Funktionen GlobalAlloc und LocalAlloc weisen committete Seiten mit Lese-/Schreibzugriff zu. |