Condividi tramite


Funzione MmFreeContiguousMemory (wdm.h)

La routine MmFreeContiguousMemory rilascia una serie di memoria fisicamente contigua allocata da una routine MmAllocateContiguousMemoryXxx .

Sintassi

void MmFreeContiguousMemory(
  [in] PVOID BaseAddress
);

Parametri

[in] BaseAddress

Puntatore all'indirizzo virtuale della memoria da liberare.

Valore restituito

nessuno

Osservazioni

La routine MmFreeContiguousMemory libera un blocco di memoria fisicamente contigua allocato da una chiamata precedente alla routine MmAllocateContiguousMemory, MmAllocateContiguousMemorySpecifyCache o MmAllocateContiguousMemorySpecifyCacheNode . Il parametro BaseAddress deve essere l'indirizzo di base ottenuto dalla chiamata precedente alla routine MmAllocateContiguousMemoryXxx .

Un driver di dispositivo che deve usare memoria contigua deve allocare solo gli elementi necessari durante l'inizializzazione del driver perché è probabile che la memoria fisica diventi frammentata durante l'esecuzione del sistema. Tale driver deve deallocare la memoria quando il driver viene eseguito usando la memoria.

I chiamanti di MmFreeContiguousMemory devono essere in esecuzione in IRQL = APC_LEVEL. Per Windows Server 2008 e versioni successive del sistema operativo Windows, è anche possibile chiamare MmFreeContiguousMemory con IRQL <= DISPATCH_LEVEL. Tuttavia, è possibile migliorare le prestazioni del driver chiamando in APC_LEVEL o sotto.

Requisiti

Requisito Valore
Client minimo supportato Disponibile a partire da Windows 2000.
Piattaforma di destinazione Universale
Intestazione wdm.h (include Wdm.h, Ntddk.h)
Libreria NtosKrnl.lib
DLL NtosKrnl.exe
IRQL Vedere La sezione Osservazioni.
Regole di conformità DDI HwStorPortProhibitedDDDIs(storport), IrqlMmDispatch(wdm)

Vedi anche

MmAllocateContiguousMemory

MmAllocateContiguousMemorySpecifyCache

MmAllocateContiguousMemorySpecifyCacheNode