MmFreeContiguousMemory-Funktion (wdm.h)

Die MmFreeContiguousMemory-Routine gibt einen Bereich physischer zusammenhängender Speicher frei, der von einer MmAllocateContiguousMemoryXxx-Routine zugewiesen wurde.

Syntax

void MmFreeContiguousMemory(
  [in] PVOID BaseAddress
);

Parameter

[in] BaseAddress

Zeiger auf die virtuelle Adresse des Speichers, der freizugeben ist.

Rückgabewert

Keine

Bemerkungen

Die MmFreeContiguousMemory-Routine gibt einen Block physischer zusammenhängender Speicher frei, der von einem vorherigen Aufruf der MmAllocateContiguousMemory, MmAllocateContiguousMemorySpecifyCache oder MmAllocateContiguousMemorySpecifyCache-Routine zugewiesen wurde. Der BaseAddress-Parameter muss die Basisadresse sein, die vom vorherigen Aufruf der MmAllocateContiguousMemoryXxx-Routine abgerufen wurde.

Ein Gerätetreiber, der zusammenhängenden Arbeitsspeicher verwenden muss, sollte nur das zuordnen, was er während der Treiberinitialisierung benötigt, da der physische Arbeitsspeicher wahrscheinlich fragmentiert wird, während das System ausgeführt wird. Ein solcher Treiber muss den Speicher umgehen, wenn der Treiber den Arbeitsspeicher verwendet.

Aufrufer von MmFreeContiguousMemory müssen bei IRQL = APC_LEVEL ausgeführt werden. Für Windows Server 2008 und höhere Versionen des Windows-Betriebssystems können Sie auch MmFreeContiguousMemory mit IRQL <= DISPATCH_LEVEL aufrufen. Sie können die Treiberleistung jedoch verbessern, indem Sie APC_LEVEL oder unten aufrufen.

Anforderungen

   
Unterstützte Mindestversion (Client) Ab Windows 2000 verfügbar.
Zielplattform Universell
Header wdm.h (include Wdm.h, Ntddk.h)
Bibliothek NtosKrnl.lib
DLL NtosKrnl.exe
IRQL Siehe Abschnitt "Hinweise".
DDI-Complianceregeln HwStorPortProhibitedDIs(storport), IrqlMmDispatch(wdm)

Weitere Informationen

MmAllocateContiguousMemory

MmAllocateContiguousMemorySpecifyCache

MmAllocateContiguousMemorySpecifyCacheNode