Freigeben über


FreeUserPhysicalPages-Funktion (memoryapi.h)

Gibt physische Speicherseiten frei, die zuvor mithilfe von AllocateUserPhysicalPages oder AllocateUserPhysicalPagesNuma zugeordnet wurden. Wenn eine dieser Seiten derzeit im Bereich Adressfenstererweiterungen (Address Windowing Extensions , AWE) zugeordnet ist, werden sie durch diesen Aufruf automatisch aufgehoben. Dies wirkt sich nicht auf den virtuellen Adressraum aus, der von einer angegebenen AWE-Region (Address Windowing Extensions) belegt wird.

64-Bit-Windows auf Itanium-basierten Systemen: Aufgrund der unterschiedlichen Seitengrößen wird FreeUserPhysicalPages für 32-Bit-Anwendungen nicht unterstützt.

Syntax

BOOL FreeUserPhysicalPages(
  [in]      HANDLE     hProcess,
  [in, out] PULONG_PTR NumberOfPages,
  [in]      PULONG_PTR PageArray
);

Parameter

[in] hProcess

Das Handle für einen Prozess.

Die Funktion gibt Arbeitsspeicher innerhalb des virtuellen Adressraums dieses Prozesses frei.

[in, out] NumberOfPages

Die Größe des freizugebenden physischen Speichers in Seiten.

Wenn die Funktion bei der Rückgabe fehlschlägt, gibt dieser Parameter die Anzahl der freizugebenden Seiten an.

[in] PageArray

Ein Zeiger auf ein Array von Seitenrahmennummern des zugeordneten Speichers, der freigegeben werden soll.

Rückgabewert

Wenn die Funktion erfolgreich ist, ist der Rückgabewert TRUE.

Wenn die Funktion fehlschlägt, ist der Rückgabewert FALSE. In diesem Fall gibt der Parameter NumberOfPages an, wie viele Seiten tatsächlich freigegeben wurden. Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf.

Hinweise

In einer Multiprozessorumgebung behält diese Funktion die Kohärenz des Hardwareübersetzungspuffers bei. Wenn diese Funktion zurückgibt, wird für alle Threads auf allen Prozessoren garantiert die richtige Zuordnung angezeigt.

Um eine Anwendung zu kompilieren, die diese Funktion verwendet, definieren Sie das makro _WIN32_WINNT als 0x0500 oder höher. Weitere Informationen finden Sie unter Verwenden der Windows-Header.

Beispiele

Ein Beispiel finden Sie unter AWE-Beispiel.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows XP [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile memoryapi.h (einschließlich Windows.h, Memoryapi.h)
Bibliothek onecore.lib
DLL Kernel32.dll

Siehe auch

Adressfenstererweiterungen

AllocateUserPhysicalPages

AllocateUserPhysicalPagesNuma

MapUserPhysicalPages

MapUserPhysicalPagesScatter

Speicherverwaltungsfunktionen