Поделиться через


Макрос NdisAllocateFromNPagedLookasideList (ndis.h)

Функция NdisAllocateFromNPagedLookasideList удаляет первую запись из заданной головы списка lookaside. Если список lookaside в настоящее время пуст, запись выделяется из непагрегированного пула.

Синтаксис

void NdisAllocateFromNPagedLookasideList(
   _L
);

Параметры

_L

Указатель на голову списка lookaside, из которого будет выделена запись. Вызывающий объект уже инициализировал головку списка с помощью функция NdisInitializeNPagedLookasideList.

Возвращаемое значение

Никакой

Замечания

Если список lookaside не пуст, NdisAllocateFromNPagedLookasideList удаляет первую запись из списка и возвращает его адрес вызывающей стороне. Если список lookaside пуст, NdisAllocateFromNPagedLookasideList вызывает функцию Выделение, указанную в параметре выделения . функции NdisInitializeNPagedLookasideList, что вызывающий объект, указанный при инициализации списка, или выделяет запись от имени вызывающего объекта. NdisAllocateFromNPagedLookasideList возвращает NULL, если вызывающая выделяет функцию, если она есть, или если эта функция не может выделить неупакованную запись.

Все записи, выделенные из непагированного списка lookaside, имеют фиксированный размер, который был указан при первоначальном вызове драйвера NdisInitializeNPagedLookasideList. Следовательно, список lookaside особенно полезен для драйверов, которые должны выделять блоки фиксированного размера, в которых должно поддерживаться состояние в ответ на динамический спрос ввода-вывода. Например, любой драйвер NDIS, ориентированный на подключение, может выделить области контекста VC, необходимые в списке lookaside, так как виртуальные машины создаются и освобождают каждую такую запись обратно в список lookaside со списком lookaside. функцию NdisFreeToNPagedLookasideList, так как каждая функция VC удаляется.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Поддерживается для драйверов NDIS 6.0 и NDIS 5.1 (см. NdisAllocateFromNPagedLookasideList (NDIS 5.1)) в Windows Vista. Поддерживается для драйверов NDIS 5.1 (см. NdisAllocateFromNPagedLookasideList (NDIS 5.1)) в Windows XP.
целевая платформа Настольный
заголовка ndis.h (include Ndis.h)
IRQL <= DISPATCH_LEVEL
правил соответствия DDI Irql_Miscellaneous_Function(ndis), NdisAllocateFromNPagedLookasideList(ndis), NdisAllocateFromNPagedLookasideList_InitFail(ndis)

См. также

NdisDeleteNPagedLookasideList NdisFreeToNPagedLookasideList NdisInitializeNPagedLookasideList