NdisMFreeSharedMemory 함수(ndis.h)
NdisMFreeSharedMemory 는 NdisMAllocateSharedMemory 또는 에서 이전에 할당한 메모리를 해제합니다.DMA NIC의 드라이버에 의한 NdisMAllocateSharedMemoryAsyncEx.
구문
void NdisMFreeSharedMemory(
[in] NDIS_HANDLE MiniportAdapterHandle,
[in] ULONG Length,
[in] BOOLEAN Cached,
[in] PVOID VirtualAddress,
[in] NDIS_PHYSICAL_ADDRESS PhysicalAddress
);
매개 변수
[in] MiniportAdapterHandle
MiniportInitializeEx에 원래 입력된 핸들을 지정합니다.
[in] Length
원래 할당된 바이트 수를 지정합니다.
[in] Cached
원래 할당을 캐시할 수 있는 경우 TRUE 를 지정합니다.
[in] VirtualAddress
NdisMAllocateSharedMemory 또는 NdisMAllocateSharedMemoryAsyncEx에서 반환되는 기본 가상 주소를 지정합니다.
[in] PhysicalAddress
NdisMAllocateSharedMemory 또는 NdisMAllocateSharedMemoryAsyncEx에서 반환되는 해당 물리적 주소를 지정합니다.
반환 값
없음
설명
이미 NdisMAllocateSharedMemory를 성공적으로 호출한 경우 또는DMA 디바이스의 미니포트 드라이버인 NdisMAllocateSharedMemoryAsyncEx는 다음 중 한 가지가 발생하는 경우 NdisMFreeSharedMemory를 호출합니다.
- MiniportInitializeEx 함수는 NIC를 초기화할 수 없으므로 이 함수는 컨트롤을 반환하기 전에 해당 NIC에 대한 하드웨어 리소스의 모든 기존 클레임을 해제해야 합니다.
- 메모리를 할당한 미니포트 드라이버가 제거되는 NIC입니다.
- 시스템이 종료되었거나 사용자가 컴퓨터에서 사용되는 네트워크 구성 요소를 다시 구성했기 때문에 드라이버가 언로드되고 있습니다.
- NIC에 대한 I/O 수요가 높지만 네트워크 트래픽이 평균 수준으로 가라앉은 경우 드라이버는 NdisMAllocateSharedMemoryAsyncEx 와 함께 추가 공유 메모리를 할당했습니다.
MiniportShutdownEx 함수에서는 NdisMFreeSharedMemory를 호출할 수 없습니다.
Microsoft Windows Server 2003, Windows XP 서비스 팩 1 이상 버전의 Windows를 사용하면 버스 master DMA NIC와 하위 DMA NIC가 모두 NdisMFreeSharedMemory를 호출할 수 있습니다. 이전 릴리스는 버스 master DMA NIC만 NdisMFreeSharedMemory를 호출할 수 있도록 허용합니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows Vista에서 NDIS 6.0 및 NDIS 5.1 드라이버(NdisMFreeSharedMemory(NDIS 5.1) 참조)에 대해 지원됩니다. Windows XP의 NDIS 5.1 드라이버(NdisMFreeSharedMemory(NDIS 5.1 참조))에 대해 지원됩니다. |
대상 플랫폼 | 유니버설 |
헤더 | ndis.h(Ndis.h 포함) |
라이브러리 | Ndis.lib |
IRQL | <= DISPATCH_LEVEL |
DDI 규정 준수 규칙 | Irql_Miniport_Driver_Function(ndis), NdisMFreeSharedMemory(ndis) |