Speicherverwaltungsfunktionen

Allgemeine Arbeitsspeicherfunktionen

Funktion BESCHREIBUNG
AddSecureMemoryCacheCallback Registriert eine Rückruffunktion, die aufgerufen wird, wenn ein geschützter Speicherbereich freigegeben oder dessen Schutz geändert wird.
CopyMemory Kopiert einen Speicherblock von einem Speicherort an einen anderen.
CreateMemoryResourceNotification Erstellt ein Speicherressourcen-Benachrichtigungsobjekt.
FillMemory Füllt einen Speicherblock mit einem angegebenen Wert aus.
GetLargePageMinimum Ruft die Mindestgröße einer großen Seite ab.
GetPhysicallyInstalledSystemMemory Ruft den Arbeitsspeicher ab, der physisch auf dem Computer installiert ist.
GetSystemFileCacheSize Ruft die aktuellen Größenbeschränkungen für den Arbeitssatz des Systemcaches ab.
GetWriteWatch Ruft die Adressen der Seiten ab, in die in einem Bereich des virtuellen Arbeitsspeichers geschrieben wurde.
GlobalMemoryStatusEx Ruft Informationen zur aktuellen Nutzung des physischen und virtuellen Speichers durch das System ab.
MoveMemory Verschiebt einen Speicherblock von einem Speicherort an einen anderen.
QueryMemoryResourceNotification Ruft den Zustand des angegebenen Speicherressourcenobjekts ab.
RemoveSecureMemoryCacheCallback Aufheben der Registrierung einer Rückruffunktion, die zuvor mit der AddSecureMemoryCacheCallback-Funktion registriert wurde.
ResetWriteWatch Setzt den Zustand der Schreibnachverfolgung für einen Bereich des virtuellen Arbeitsspeichers zurück.
SecureMemoryCacheCallback Eine anwendungsdefinierte Funktion, die aufgerufen wird, wenn ein geschützter Speicherbereich freigegeben oder deren Schutz geändert wird.
SecureZeroMemory Füllt einen Speicherblock mit Nullen aus.
SetSystemFileCacheSize Schränkt die Größe des Arbeitssatzes für den Dateisystemcache ein.
ZeroMemory Füllt einen Speicherblock mit Nullen aus.

Funktionen zur Verhinderung der Datenausführung

Diese Funktionen werden mit datenausführungsverhinderung (Data Execution Prevention, DEP) verwendet.

Funktion BESCHREIBUNG
GetProcessDEPPolicy Ruft DEP-Einstellungen für einen Prozess ab.
GetSystemDEPPolicy Ruft DIE DEP-Einstellungen für das System ab.
SetProcessDEPPolicy Ändert die DEP-Einstellungen für einen Prozess.

Dateizuordnungsfunktionen

Diese Funktionen werden in der Dateizuordnungverwendet.

Funktion BESCHREIBUNG
CreateFileMappingA Erstellt oder öffnet ein benanntes oder unbenanntes Dateizuordnungsobjekt für eine angegebene Datei.
CreateFileMappingW Erstellt oder öffnet ein benanntes oder unbenanntes Dateizuordnungsobjekt für eine angegebene Datei.
CreateFileMapping2 Erstellt oder öffnet ein benanntes oder unbenanntes Dateizuordnungsobjekt für eine angegebene Datei. Sie können einen bevorzugten NUMA-Knoten für den physischen Speicher als erweiterten Parameter angeben. weitere Informationen finden Sie unter dem Parameter ExtendedParameters.
CreateFileMappingFromApp Erstellt oder öffnet ein benanntes oder unbenanntes Dateizuordnungsobjekt für eine angegebene Datei aus einer Windows Store-App.
CreateFileMappingNuma Erstellt oder öffnet ein benanntes oder unbenanntes Dateizuordnungsobjekt für eine angegebene Datei und gibt den NUMA-Knoten für den physischen Speicher an.
FlushViewOfFile Schreibt einen Bytebereich innerhalb einer zugeordneten Ansicht einer Datei auf den Datenträger.
GetMappedFileName Überprüft, ob sich die angegebene Adresse innerhalb einer Speicherzuordnungsdatei im Adressraum des angegebenen Prozesses befindet. Wenn ja, gibt die Funktion den Namen der speicherzuordnungsbasierten Datei zurück.
MapViewOfFile Karten eine Ansicht einer Dateizuordnung in den Adressraum eines aufrufenden Prozesses ein.
MapViewOfFile2 Karten eine Ansicht einer Datei oder eines seitendateibasierten Abschnitts in den Adressraum des angegebenen Prozesses ein.
MapViewOfFile3 Karten eine Ansicht einer Datei oder eines seitendateibasierten Abschnitts in den Adressraum des angegebenen Prozesses ein.
MapViewOfFile3FromApp Karten eine Ansicht einer Dateizuordnung im Adressraum eines aufrufenden Prozesses aus einer Windows Store-App.
MapViewOfFileEx Karten eine Ansicht einer Dateizuordnung in den Adressraum eines aufrufenden Prozesses ein. Ein Aufrufer kann optional eine vorgeschlagene Speicheradresse für die Ansicht angeben.
MapViewOfFileExNuma Karten eine Ansicht einer Dateizuordnung im Adressraum eines aufrufenden Prozesses und gibt den NUMA-Knoten für den physischen Speicher an.
MapViewOfFileFromApp Karten eine Ansicht einer Dateizuordnung im Adressraum eines aufrufenden Prozesses aus einer Windows Store-App.
MapViewOfFileNuma2 Karten eine Ansicht einer Datei oder eines seitendateibasierten Abschnitts in den Adressraum des angegebenen Prozesses ein.
OpenFileMapping Öffnet ein benanntes Dateizuordnungsobjekt.
OpenFileMappingFromApp Öffnet ein benanntes Dateizuordnungsobjekt.
UnmapViewOfFile Entfernt die Zuordnung einer zugeordneten Ansicht einer Datei zum Adressraum des aufrufenden Prozesses.
UnmapViewOfFile2 Entzuordnung einer zuvor zugeordneten Ansicht einer Datei oder eines aus einer Auslagerungsdatei unterstützten Abschnitts.
UnmapViewOfFileEx Entzuordnung einer zuvor zugeordneten Ansicht einer Datei oder eines aus einer Auslagerungsdatei unterstützten Abschnitts.

AWE-Funktionen

Dies sind die AWE-Funktionen.

Funktion BESCHREIBUNG
AllocateUserPhysicalPages Ordnet physische Speicherseiten zu, die innerhalb einer beliebigen AWE-Region des Prozesses zugeordnet und nicht zugeordnet werden sollen.
AllocateUserPhysicalPagesNuma Ordnet physische Speicherseiten zu, die innerhalb eines beliebigen AWE-Prozesses zugeordnet und nicht zugeordnet werden sollen, und gibt den NUMA-Knoten für den physischen Speicher an.
FreeUserPhysicalPages Gibt physische Speicherseiten frei, die zuvor mit AllocateUserPhysicalPages zugeordnet wurden.
MapUserPhysicalPages Karten zuvor physische Speicherseiten an der angegebenen Adresse innerhalb einer AWE-Region zugeordnet haben.
MapUserPhysicalPagesScatter Karten zuvor physische Speicherseiten an der angegebenen Adresse innerhalb einer AWE-Region zugeordnet haben.

Heapfunktionen

Dies sind die Heapfunktionen.

Funktion BESCHREIBUNG
GetProcessHeap Ruft ein Handle für den Heap des aufrufenden Prozesses ab.
GetProcessHeaps Ruft Handles für alle Heaps ab, die für den aufrufenden Prozess gültig sind.
HeapAlloc Ordnet einen Speicherblock aus einem Heap zu.
HeapCompact Verknappt angrenzende freie Speicherblöcke auf einem Heap.
HeapErzeugen Erstellt ein Heapobjekt.
HeapDestroy Zerstört das angegebene Heapobjekt.
HeapFree Gibt einen Speicherblock frei, der einem Heap zugeordnet ist.
HeapLock Versucht, die einem angegebenen Heap zugeordnete Sperre zu erhalten.
HeapQueryInformation Ruft Informationen zum angegebenen Heap ab.
HeapReAlloc Neuverlegung eines Speicherblocks aus einem Heap.
HeapSetInformation Legt Heapinformationen für den angegebenen Heap fest.
HeapSize Ruft die Größe eines Speicherblocks ab, der aus einem Heap zugeordnet ist.
HeapUnlock Gibt den Besitz der Sperre frei, die einem angegebenen Heap zugeordnet ist.
HeapValidate Versucht, einen angegebenen Heap zu überprüfen.
HeapWalk Enumeriert die Speicherblöcke in einem angegebenen Heap.

Funktionen des virtuellen Arbeitsspeichers

Dies sind die virtuellen Speicherfunktionen.

Funktion BESCHREIBUNG
DiscardVirtualMemory Verwirft den Arbeitsspeicherinhalt eines Bereichs von Speicherseiten, ohne den Arbeitsspeicher zu dekomprimieren. Der Inhalt des verworfenen Arbeitsspeichers ist nicht definiert und muss von der Anwendung neu geschrieben werden.
OfferVirtualMemory Gibt an, dass die in einem Bereich von Speicherseiten enthaltenen Daten von der Anwendung nicht mehr benötigt werden und bei Bedarf vom System verworfen werden können.
PrefetchVirtualMemory Vorabruft virtuelle Adressbereiche in physischen Speicher.
QueryVirtualMemoryInformation Gibt Informationen zu einer Seite oder einer Gruppe von Seiten innerhalb des virtuellen Adressraums des angegebenen Prozesses zurück.
ReclaimVirtualMemory Gibt einen Bereich von Speicherseiten zurück, die dem System mit OfferVirtualMemory angeboten wurden.
SetProcessValidCallTargets Stellt CFG eine Liste gültiger indirekter Aufrufziele zur Folge und gibt an, ob sie als gültig markiert werden sollen.
Virtualalloc Reserviert oder committ einen Bereich von Seiten im virtuellen Adressraum des aufrufenden Prozesses.
VirtualAlloc2 Reserviert, committ oder ändert den Zustand eines Speicherbereichs innerhalb des virtuellen Adressraums eines angegebenen Prozesses. Die Funktion initialisiert den Arbeitsspeicher, den sie 0 (null) zuteilen.
VirtualAlloc2FromApp Reserviert, committ oder ändert den Zustand eines Seitenbereichs im virtuellen Adressraum des aufrufenden Prozesses. Der von dieser Funktion zugeordnete Arbeitsspeicher wird automatisch mit 0 initialisiert.
VirtualAllocEx Reserviert einen Bereich von Seiten im virtuellen Adressraum des angegebenen Prozesses oder committ diesen.
VirtualAllocExNuma Reserviert einen Speicherbereich innerhalb des virtuellen Adressraums des angegebenen Prozesses oder führt einen Commit aus und gibt den NUMA-Knoten für den physischen Speicher an.
VirtualAllocFromApp Reserviert, committ oder ändert den Zustand eines Seitenbereichs im virtuellen Adressraum des aufrufenden Prozesses. Der von dieser Funktion zugeordnete Arbeitsspeicher wird automatisch mit 0 initialisiert.
Virtualfree Gibt einen Bereich von Seiten innerhalb des virtuellen Adressraums des aufrufenden Prozesses frei oder dekomprimiert diesen.
VirtualFreeEx Gibt einen Speicherbereich innerhalb des virtuellen Adressraums eines angegebenen Prozesses frei oder dekomprimiert diesen.
VirtualLock Sperrt den angegebenen Bereich des virtuellen Adressraums des Prozesses im physischen Speicher.
VirtualProtect Ändert den Zugriffsschutz für einen Bereich von Seiten, für die ein Committed ausgeführt wurde, im virtuellen Adressraum des aufrufenden Prozesses.
VirtualProtectEx Ändert den Zugriffsschutz für einen Bereich von Seiten, für die ein Committed ausgeführt wurde, im virtuellen Adressraum des aufrufenden Prozesses.
VirtualProtectFromApp Ändert den Schutz für einen Bereich von Seiten, für die ein Committed ausgeführt wurde, im virtuellen Adressraum des aufrufenden Prozesses.
Virtualquery Stellt Informationen zu einem Seitenbereich im virtuellen Adressraum des aufrufenden Prozesses bereit.
VirtualQueryEx Stellt Informationen zu einem Seitenbereich im virtuellen Adressraum des aufrufenden Prozesses bereit.
VirtualUnlock Entsperrt einen angegebenen Seitenbereich im virtuellen Adressraum eines Prozesses.

Globale und lokale Funktionen

Siehe auch globale und lokale Funktionen. Diese Funktionen werden aus Gründen der Kompatibilität mit 16-Bit-Windows bereitgestellt und mit dynamische Daten Exchange (DDE), den Zwischenablagefunktionen und OLE-Datenobjekten verwendet. Sofern in der Dokumentation nicht ausdrücklich angegeben ist, dass eine globale oder lokale Funktion verwendet werden soll, sollten neue Anwendungen die entsprechende Heapfunktion mit dem von GetProcessHeapzurückgegebenen Handle verwenden. Legen Sie für die entsprechende Funktionalität der globalen oder lokalen Funktion den dwFlags-Parameter der Heapfunktion auf 0 fest.

Funktion BESCHREIBUNG Entsprechende Heapfunktion
GlobalAlloc, LocalAlloc Ordnet die angegebene Anzahl von Bytes aus dem Heap zu. HeapAlloc
GlobalDiscard, LocalDiscard Verwirft den angegebenen globalen Speicherblock. Nicht zutreffend
GlobalFlags, LocalFlags Gibt Informationen zum angegebenen globalen Speicherobjekt zurück. Nicht zutreffend Verwenden Sie HeapValidate, um den Heap zu überprüfen.
GlobalFree, LocalFree Gibt das angegebene globale Speicherobjekt frei. HeapFree
GlobalHandle, LocalHandle Ruft das Handle ab, das dem angegebenen Zeiger auf einen globalen Speicherblock zugeordnet ist. Diese Funktion sollte nur mit OLE- und Zwischenablagefunktionen verwendet werden, die sie benötigen. Nicht zutreffend
GlobalLock, LocalLock Sperrt ein globales Speicherobjekt und gibt einen Zeiger auf das erste Byte des Speicherblocks des Objekts zurück. Nicht zutreffend
GlobalReAlloc, LocalReAlloc Ändert die Größe oder die Attribute eines angegebenen globalen Speicherobjekts. HeapReAlloc
GlobalSize, LocalSize Ruft die aktuelle Größe des angegebenen globalen Speicherobjekts ab. HeapSize
GlobalUnlock, LocalUnlock Dekrementierung der einem Speicherobjekt zugeordneten Sperrenanzahl. Diese Funktion sollte nur mit OLE- und Zwischenablagefunktionen verwendet werden, die sie benötigen. Nicht zutreffend

Funktionen für ungültigen Arbeitsspeicher

Funktion BESCHREIBUNG
BadMemoryCallbackRoutine Eine anwendungsdefinierte Funktion, die bei der RegisterBadMemoryNotification-Funktion registriert ist und aufgerufen wird, wenn eine oder mehrere Seiten mit ungültigem Speicher erkannt werden.
GetMemoryErrorHandlingCapabilities Ruft die Speicherfehlerbehandlungsfunktionen des Systems ab.
RegisterBadMemoryNotification Registriert eine Benachrichtigung über fehlerhaften Arbeitsspeicher, die aufgerufen wird, wenn eine oder mehrere Seiten mit fehlerhaftem Speicher erkannt werden.
UnregisterBadMemoryNotification Schließt das angegebene Benachrichtigungshandle für ungültigen Arbeitsspeicher.

Enclave-Funktionen

Funktion BESCHREIBUNG
CreateEnclave Erstellt eine neue nicht initialisierte Enclave. Eine Enclave ist eine isolierte Code- und Datenregion innerhalb des Adressraums für eine Anwendung. Nur Code, der innerhalb der Enclave ausgeführt wird, kann auf Daten innerhalb derselben Enclave zugreifen.
InitializeEnclave Initialisiert eine Enclave, die Sie erstellt und mit Daten geladen haben.
IsEnclaveTypeSupported Ruft ab, ob der angegebene Enclave-Typ unterstützt wird.
LoadEnclaveData Lädt Daten in eine nicht initialisierte Enclave, die Sie durch Aufrufen von CreateEnclaveerstellt haben.

ATL-Thunkfunktionen

Funktion BESCHREIBUNG
AtlThunk_AllocateData Belegt Speicherplatz im Arbeitsspeicher für einen ATL-Thunk.
AtlThunk_DataToCode Gibt eine ausführbare Funktion zurück, die dem AtlThunkData_t Parameter entspricht.
AtlThunk_FreeData Gibt Arbeitsspeicher frei, der einem ATL-Thunk zugeordnet ist.
AtlThunk_InitData Initialisiert einen ATL-Thunk.

Veraltete Funktionen

Diese Funktionen werden nur für die Kompatibilität mit 16-Bit-Versionen von Windows bereitgestellt:

Die folgende Funktion kann falsche Informationen zurückgeben und sollte nicht verwendet werden. Verwenden Sie stattdessen die GlobalMemoryStatusEx-Funktion.