NdisFreeMemoryWithTagPriority 함수(ndis.h)

NdisFreeMemoryWithTagPriority 함수는 와 함께 할당된 메모리를 해제합니다. NdisAllocateMemoryWithTagPriority 함수입니다.

구문

void NdisFreeMemoryWithTagPriority(
  [in] NDIS_HANDLE NdisHandle,
  [in] PVOID       VirtualAddress,
  [in] ULONG       Tag
);

매개 변수

[in] NdisHandle

호출자 초기화 중에 가져온 NDIS 드라이버 또는 instance 핸들입니다. 드라이버가 에 전달한 것과 동일한 핸들이어야 합니다. NdisAllocateMemoryWithTagPriority 함수입니다. 예를 들어 미니포트 드라이버는 에서 가져온 NDIS 핸들을 사용할 수 있습니다. NdisMRegisterMiniportDriver 또는 MiniportInitializeEx 함수입니다. 다른 NDIS 드라이버는 다음 함수의 핸들을 사용할 수 있습니다.

NdisRegisterProtocolDriver

NdisOpenAdapterEx

NdisFRegisterFilterDriver

FilterAttach

[in] VirtualAddress

할당된 메모리의 기본 가상 주소에 대한 포인터입니다. 이 주소는 에서 반환되었습니다. NdisAllocateMemoryWithTagPriority 함수입니다.

[in] Tag

작은따옴표로 구분된 문자열로, 일반적으로 역순으로 지정된 최대 4자입니다. 이 호출에 대해 NDIS에서 제공하는 기본 태그는 'maDN'이지만 호출자는 명시적 값을 제공하여 이 기본값을 재정의할 수 있습니다.

반환 값

없음

설명

할당된 미니포트 드라이버가 언로드될 때까지 캐시되지 않은 메모리 및 연속 메모리가 거의 해제되지 않으므로 일반적으로 NdisFreeMemoryWithTagPriority 호출자는 이러한 유형의 할당 해제에 대해 IRQL = PASSIVE_LEVEL 실행됩니다. 어떤 경우든 다음을 수행합니다.

  • NdisFreeMemoryWithTagPriority 호출자가 연속 메모리를 해제하는 경우 IRQL = PASSIVE_LEVEL 실행되어야 합니다.
  • NdisFreeMemoryWithTagPriority 호출자가 캐시되지 않은 메모리를 해제하는 경우 IRQL < DISPATCH_LEVEL 실행 중이어야 합니다.
  • NdisFreeMemoryWithTagPriority 호출자가 연속되거나 캐시되지 않은 메모리를 해제하는 경우 IRQL <= DISPATCH_LEVEL 실행되어야 합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 NDIS 6.20 이상에서 지원됩니다.
대상 플랫폼 유니버설
헤더 ndis.h(Ndis.h 포함)
라이브러리 Ndis.lib
IRQL 설명 섹션을 참조하십시오.
DDI 규정 준수 규칙 NdisAllocateMemoryWithTagPriority_Cleanup(ndis), NdisAllocateMemoryWithTagPriority_InitFail(ndis)

추가 정보

FilterAttach

MiniportInitializeEx

NdisAllocateMemoryWithTagPriority

NdisFRegisterFilterDriver

NdisMRegisterMiniportDriver

NdisOpenAdapterEx

NdisRegisterProtocolDriver