Función MmFreeContiguousMemory (ntddk.h)
La rutina MmFreeContiguousMemory libera un intervalo de memoria físicamente contigua asignada por una rutina MmAllocateContiguousMemoryXxx .
Sintaxis
void MmFreeContiguousMemory(
[in] PVOID BaseAddress
);
Parámetros
[in] BaseAddress
Puntero a la dirección virtual de la memoria que se va a liberar.
Valor devuelto
None
Observaciones
La rutina MmFreeContiguousMemory libera un bloque de memoria físicamente contigua asignada por una llamada anterior a la rutina MmAllocateContiguousMemory, MmAllocateContiguousMemorySpecifyCache o MmAllocateContiguousMemorySpecifyCacheNode . El parámetro BaseAddress debe ser la dirección base que se obtuvo de la llamada anterior a la rutina MmAllocateContiguousMemoryXxx .
Un controlador de dispositivo que debe usar memoria contigua solo debe asignar lo que necesita durante la inicialización del controlador, ya que es probable que la memoria física se fragmente a medida que se ejecuta el sistema. Este controlador debe desasignar la memoria cuando el controlador haya terminado de usar la memoria.
Los autores de llamadas de MmFreeContiguousMemory deben ejecutarse en IRQL = APC_LEVEL. Para Windows Server 2008 y versiones posteriores del sistema operativo Windows, también puedes llamar a MmFreeContiguousMemory con IRQL <= DISPATCH_LEVEL. Sin embargo, puede mejorar el rendimiento del controlador llamando a APC_LEVEL o a continuación.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Disponible a partir de Windows 2000. |
Plataforma de destino | Universal |
Encabezado | ntddk.h (incluya Wdm.h, Ntddk.h) |
Library | NtosKrnl.lib |
Archivo DLL | NtosKrnl.exe |
IRQL | vea la sección Comentarios. |
Reglas de cumplimiento de DDI | HwStorPortProhibitedDIs(storport), IrqlMmDispatch(wdm) |