NET_BUFFER_ALLOCATE_MDLコールバック関数 (nblapi.h)
NetAllocateMdl 関数は、指定したサイズの関連付けられたメモリ ブロックを持つ MDL を割り当てます。
構文
NET_BUFFER_ALLOCATE_MDL NetBufferAllocateMdl;
MDL * NetBufferAllocateMdl(
[in] ULONG *BufferSize
)
{...}
パラメーター
[in] BufferSize
メモリ ブロックのサイズ (バイト単位)。 NetAllocateMdl 呼び出すと、NDIS は要求されたサイズを渡します。
戻り値
NetAllocateMdl は、割り当てられた MDL へのポインターを返します。 割り当てが失敗した場合、戻り値は NULL 。
備考
NDIS ドライバーは、NetAllocateMdl 関数のエントリ ポイントを指定する場合、 AllocateMdl パラメーターNdisRetreatNetBufferDataStart 関数、NDIS は NetAllocateMdl 呼び出して MDL とメモリを割り当てます。
NDIS は、BufferSize で関連付けられているメモリ ブロック サイズを指定します。
NetAllocateMdl は、ドライバーの設計要件を満たす任意の割り当て方法を使用できます。 NDIS は、メモリを解放する NetFreeMdl 関数を呼び出すとき、NDIS ドライバーは、メモリの割り当てに使用したのと同じメモリ管理メカニズムを使用してメモリを解放する必要があります。
NDIS は、IRQL <= DISPATCH_LEVEL で NetAllocateMdl 呼び出します。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | NDIS 6.0 以降でサポートされています。 |
ヘッダー | nblapi.h (ndis.h を含む) |
IRQL | <= DISPATCH_LEVEL |
関連項目
NdisRetreatNetBufferDataStart のNetFreeMdl を する