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) |