Función NdisMFreeSharedMemory (ndis.h)
NdisMFreeSharedMemory libera memoria asignada anteriormente por NdisMAllocateSharedMemory o NdisMAllocateSharedMemoryAsyncEx por el controlador de una NIC DMA.
Sintaxis
void NdisMFreeSharedMemory(
[in] NDIS_HANDLE MiniportAdapterHandle,
[in] ULONG Length,
[in] BOOLEAN Cached,
[in] PVOID VirtualAddress,
[in] NDIS_PHYSICAL_ADDRESS PhysicalAddress
);
Parámetros
[in] MiniportAdapterHandle
Especifica el identificador de entrada original en MiniportInitializeEx.
[in] Length
Especifica el número de bytes asignados originalmente.
[in] Cached
Especifica TRUE si la asignación original se puede almacenar en caché.
[in] VirtualAddress
Especifica la dirección virtual base devuelta por NdisMAllocateSharedMemory o NdisMAllocateSharedMemoryAsyncEx.
[in] PhysicalAddress
Especifica la dirección física correspondiente devuelta por NdisMAllocateSharedMemory o NdisMAllocateSharedMemoryAsyncEx.
Valor devuelto
None
Observaciones
Si ya ha realizado una llamada correcta a NdisMAllocateSharedMemory o NdisMAllocateSharedMemoryAsyncEx, el controlador de miniporte de un dispositivo DMA llama a NdisMFreeSharedMemory si se produce alguna de las siguientes acciones:
- Su función MiniportInitializeEx no puede inicializar la NIC, por lo que esta función debe liberar todas las notificaciones existentes en los recursos de hardware de esa NIC antes de devolver el control.
- NIC para la que el controlador de minipuerto asignó la memoria se va a quitar.
- El controlador se está descargando, ya sea porque el sistema se apaga o porque el usuario ha reconfigurado los componentes de red usados en la máquina.
- El controlador asignó memoria compartida adicional con NdisMAllocateSharedMemoryAsyncEx cuando la demanda de E/S en una NIC era alta, pero el tráfico de red ahora ha disminuido a un nivel medio.
No se puede llamar a NdisMFreeSharedMemory desde una función MiniportShutdownEx.
Microsoft Windows Server 2003, Windows XP Service Pack 1 y versiones posteriores de Windows permiten que las NIC DMA maestras de bus y las NIC DMA subordinadas llamen a NdisMFreeSharedMemory. Las versiones anteriores solo permiten que las NIC DMA de bus-master llamen a NdisMFreeSharedMemory.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Compatible con los controladores NDIS 6.0 y NDIS 5.1 (consulte NdisMFreeSharedMemory (NDIS 5.1)) en Windows Vista. Compatible con los controladores NDIS 5.1 (consulte NdisMFreeSharedMemory (NDIS 5.1)) en Windows XP. |
Plataforma de destino | Universal |
Encabezado | ndis.h (incluya Ndis.h) |
Library | Ndis.lib |
IRQL | <= DISPATCH_LEVEL |
Reglas de cumplimiento de DDI | Irql_Miniport_Driver_Function(ndis), NdisMFreeSharedMemory(ndis) |