다음을 통해 공유


NdisMFreeSharedMemory 함수(ndis.h)

NdisMFreeSharedMemory 이전에 NdisMAllocateSharedMemory 또는 NdisMAllocateSharedMemoryAsyncEx는 DMA NIC 드라이버에 의해.

통사론

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 성공적으로 호출한 경우 또는 NdisMAllocateSharedMemoryAsyncExDMA 디바이스의 미니포트 드라이버는 다음 중 발생하는 경우 NdisMFreeSharedMemory 호출합니다.

  • 해당 MiniportInitializeEx 함수는 NIC를 초기화할 수 없으므로 이 함수는 컨트롤을 반환하기 전에 해당 NIC의 하드웨어 리소스에 대한 모든 기존 클레임을 해제해야 합니다.
  • 메모리를 할당한 미니포트 드라이버가 제거되는 NIC입니다.
  • 시스템이 종료되거나 사용자가 컴퓨터에서 사용되는 네트워크 구성 요소를 다시 구성했기 때문에 드라이버가 언로드되고 있습니다.
  • 드라이버는 NIC에 대한 I/O 수요가 높았지만 네트워크 트래픽이 평균 수준으로 가라앉은 경우 NdisMAllocateSharedMemoryAsyncEx 추가 공유 메모리를 할당했습니다.
미니포트 드라이버는 NdisMFreeSharedMemory 호출하여 할당된 공유 메모리 범위 내에서 하위 범위를 해제할 수 없습니다. NdisMFreeSharedMemory 전달된 매개 변수는 NdisMAllocateSharedMemory 또는 NdisMAllocateSharedMemoryAsyncEx전달된 매개 변수와 정확히 일치해야 합니다.

NdisMFreeSharedMemoryMiniportShutdownEx 함수에서 호출할 수 없습니다.

Microsoft Windows Server 2003, Windows XP 서비스 팩 1 이상 버전의 Windows에서는 버스 마스터 DMA NIC와 하위 DMA NIC가 모두 NdisMFreeSharedMemory호출할 수 있습니다. 이전 릴리스는 버스 마스터 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)

참고 항목

MiniportHaltEx

MiniportInitializeEx

MiniportSharedMemoryAllocateComplete

MiniportShutdownEx

NdisMAllocateSharedMemory

NdisMAllocateSharedMemoryAsyncEx