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


Функция FsRtlInitExtraCreateParameterLookasideList (ntifs.h)

Подпрограмма FsRtlInitExtraCreateParameterLookasideList инициализирует выгружаемый или невыгружаемый список просмотра пула, используемый для выделения одной или нескольких дополнительных структур контекста создания параметров (ECP) фиксированного размера.

Синтаксис

void FsRtlInitExtraCreateParameterLookasideList(
  [in, out] PVOID                     Lookaside,
  [in]      FSRTL_ECP_LOOKASIDE_FLAGS Flags,
  [in]      SIZE_T                    Size,
  [in]      ULONG                     Tag
);

Параметры

[in, out] Lookaside

Указатель на непрозрачную PAGED_LOOKASIDE_LIST или NPAGED_LOOKASIDE_LIST структуру со списком-головой. Для страничного или невыгружаемого списка просмотра структура list-head должна быть выделена из невыгружаемого пула.

[in] Flags

Определяет параметры выделения пула. Если параметр Flags содержит FSRTL_ECP_LOOKASIDE_FLAG_NONPAGED_POOL битовое значение флага, FsRtlInitExtraCreateParameterLookasideList инициализирует список lookaside для непагрегированных записей ECP указанного размера. В противном случае FsRtlInitExtraCreateParameterLookasideList инициализирует список lookaside для выгружаемых записей ECP указанного размера.

[in] Size

Указывает размер (в байтах) для всех записей ECP в списке lookaside.

[in] Tag

Указывает тег пула, используемый при выделении записей ECP списка lookaside. Дополнительные сведения о тегах пула см. в разделе Параметр Tagобъекта ExAllocatePoolWithTag.

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

None

Remarks

Эта подпрограмма используется для инициализации выгружаемого или невыгружаемого списка просмотра пула. Используйте подпрограмму FsRtlAllocateExtraCreateParameterFromLookasideList , чтобы выделить ECP из списка lookaside, и подпрограмму FsRtlFreeExtraCreateParameter , чтобы вернуть буфер ECP в список lookaside для повторного использования.

Используйте подпрограмму FsRtlDeleteExtraCreateParameterLookasideList , чтобы освободить сам список lookaside.

Драйверы должны освободить все ecp и списки lookaside, которые они создают, прежде чем выгрузить.

Дополнительные сведения об использовании списков lookaside с драйверами см. в статье Использование lookaside Списки.

Требования

Требование Значение
Минимальная версия клиента Подпрограмма FsRtlInitExtraCreateParameterLookasideList доступна начиная с Windows Vista.
Целевая платформа Универсальное
Верхняя часть ntifs.h (включая Ntifs.h)
Библиотека NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL

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

ECP_LIST

ExAllocatePoolWithTag

FsRtlAllocateExtraCreateParameterFromLookasideList

FsRtlDeleteExtraCreateParameterLookasideList

FsRtlFreeExtraCreateParameter

NPAGED_LOOKASIDE_LIST

PAGED_LOOKASIDE_LIST