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_LISTNPAGED_LOOKASIDE_LIST 列表头结构的指针。 对于分页或非分页查看列表,必须从非分页池中分配列表头结构。

[in] Flags

定义池分配选项。 如果 Flags 参数包含FSRTL_ECP_LOOKASIDE_FLAG_NONPAGED_POOL位标志值, FsRtlInitExtraCreateParameterLookasideList 将初始化指定大小的非分页 ECP 条目的查找列表。 否则, FsRtlInitExtraCreateParameterLookasideList 初始化指定大小的分页 ECP 条目的查找列表。

[in] Size

指定查找列表中所有 ECP 条目的大小(以字节为单位)。

[in] Tag

指定分配查看列表 ECP 条目时要使用的池标记。 有关池标记的详细信息,请参阅 ExAllocatePoolWithTagTag 参数。

返回值

备注

使用此例程初始化分页或非分页池旁观列表。 使用 FsRtlAllocateExtraCreateParameterFromLookasideList 例程从 lookaside 列表中分配 ECP,使用 FsRtlFreeExtraCreateParameter 例程将 ECP 缓冲区返回到 lookaside 列表进行回收。

使用 FsRtlDeleteExtraCreateParameterLookasideList 例程释放 lookaside 列表本身。

驱动程序必须在卸载之前释放他们创建的所有 ECP 和查看列表。

有关将 lookaside 列表与驱动程序配合使用的详细信息,请参阅使用 Lookaside Lists

要求

要求
最低受支持的客户端 FsRtlInitExtraCreateParameterLookasideList 例程从 Windows Vista 开始可用。
目标平台 通用
标头 ntifs.h (包括 Ntifs.h)
Library NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL

另请参阅

ECP_LIST

ExAllocatePoolWithTag

FsRtlAllocateExtraCreateParameterFromLookasideList

FsRtlDeleteExtraCreateParameterLookasideList

FsRtlFreeExtraCreateParameter

NPAGED_LOOKASIDE_LIST

PAGED_LOOKASIDE_LIST