FsRtlInitializeLargeMcb 函数 (ntifs.h)

FsRtlInitializeLargeMcb 例程 (MCB) 结构初始化映射控制块。

语法

void FsRtlInitializeLargeMcb(
       PLARGE_MCB Mcb,
  [in] POOL_TYPE  PoolType
);

参数

Mcb

指向要初始化的调用方分配的 MCB 结构的指针。

[in] PoolType

为 MCB 分配其他内部存储时要使用的池类型。 下列类型作之一:

  • NonPagedPool
  • PagedPool
  • NonPagedPoolCacheAligned
  • PagedPoolCacheAligned

NonPagedPoolMustSucceedNonPagedPoolCacheAlignedMustS 池类型已过时,不应再使用。

返回值

备注

FsRtlInitializeLargeMcb (MCB) 结构初始化地图控制块。 文件系统使用 MCB 结构将文件的虚拟块编号 (VBN) 映射到磁盘上 LBN) (相应的逻辑块编号。

忽略 LBN 的 32 位。 仅使用较低的 32 位。

在 MCB 结构上使用任何其他 FsRtlXxxMcbYyy 例程之前,文件系统必须调用 FsRtlInitializeLargeMcb

如果发生池分配失败, FsRtlInitializeLargeMcb 将引发STATUS_INSUFFICIENT_RESOURCES异常。 若要控制是否发生此池分配失败,驱动程序应在 try-excepttry-finally 语句中包装对 FsRtlInitializeLargeMcb 的调用。

要求

要求
目标平台 通用
标头 ntifs.h (包括 Ntifs.h)
Library NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL

另请参阅

FsRtlAddLargeMcbEntry

FsRtlGetNextLargeMcbEntry

FsRtlLookupLargeMcbEntry

FsRtlLookupLastLargeMcbEntry

FsRtlLookupLastLargeMcbEntryAndIndex

FsRtlNumberOfRunsInLargeMcb

FsRtlRemoveLargeMcbEntry

FsRtlSplitLargeMcb

FsRtlTruncateLargeMcb

FsRtlUninitializeLargeMcb