функция обратного вызова 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 вызывает NetAllocateMdl по адресу IRQL <= DISPATCH_LEVEL.

Требования

Требование Значение
Минимальная версия клиента Поддерживается в NDIS 6.0 и более поздних версиях.
Верхняя часть nblapi.h (включая ndis.h)
IRQL <= DISPATCH_LEVEL

См. также раздел

NdisRetreatNetBufferDataStart

NetFreeMdl