NdisFreeMemoryWithTag 関数 (ndis.h)

NdisFreeMemoryWithTag 関数は、すべての NDIS バージョンでは非推奨です。 代わりに NdisAllocateMemoryWithTagPriority を使用してください。

構文

void NdisFreeMemoryWithTag(
  [in] IN PVOID VirtualAddress,
  [in] IN ULONG Tag
);

パラメーター

[in] VirtualAddress

割り当てられたメモリのベース仮想アドレスへのポインター。 このアドレスは、 NdisAllocateMemoryWithTag 関数。

[in] Tag

一重引用符で区切られた文字列。最大 4 文字で、通常は逆の順序で指定されます。 この呼び出しの NDIS 提供の既定のタグは "maDN" ですが、呼び出し元は明示的な値を指定することで、この既定値をオーバーライドできます。

戻り値

なし

解説

キャッシュされていないメモリと連続したメモリは、割り当てられているミニポート ドライバーがアンロードされるまでほとんど解放されないため、 通常、NdisFreeMemoryWithTag の呼び出し元は、これらの種類の割り当て解除に対して IRQL = PASSIVE_LEVELで実行されます。 いずれの場合も、次の手順を実行します。

  • NdisFreeMemoryWithTag の呼び出し元が連続したメモリを解放する場合、IRQL = PASSIVE_LEVELで実行されている必要があります。
  • NdisFreeMemoryWithTag の呼び出し元がキャッシュされていないメモリを解放する場合は、IRQL < DISPATCH_LEVEL で実行されている必要があります。
  • NdisFreeMemoryWithTag の呼び出し元が連続していないメモリとキャッシュされていないメモリを解放する場合は、IRQL <= DISPATCH_LEVELで実行されている必要があります。

要件

要件
サポートされている最小のクライアント NDIS 6.20 以降でサポートされています。
対象プラットフォーム ユニバーサル
Header ndis.h (Ndis.h を含む)
Library Ndis.lib
IRQL 「解説」を参照してください。

こちらもご覧ください

NdisAllocateMemoryWithTag