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 驱动程序在 的 AllocateMdl 参数处为 NetAllocateMdl 函数指定入口点 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 |