FsRtlInitializeLargeMcb 函数 (ntifs.h)
FsRtlInitializeLargeMcb 例程 (MCB) 结构初始化映射控制块。
语法
void FsRtlInitializeLargeMcb(
PLARGE_MCB Mcb,
[in] POOL_TYPE PoolType
);
参数
Mcb
指向要初始化的调用方分配的 MCB 结构的指针。
[in] PoolType
为 MCB 分配其他内部存储时要使用的池类型。 下列类型作之一:
- NonPagedPool
- PagedPool
- NonPagedPoolCacheAligned
- PagedPoolCacheAligned
NonPagedPoolMustSucceed 和 NonPagedPoolCacheAlignedMustS 池类型已过时,不应再使用。
返回值
无
备注
FsRtlInitializeLargeMcb (MCB) 结构初始化地图控制块。 文件系统使用 MCB 结构将文件的虚拟块编号 (VBN) 映射到磁盘上 LBN) (相应的逻辑块编号。
忽略 LBN 的 32 位。 仅使用较低的 32 位。
在 MCB 结构上使用任何其他 FsRtlXxxMcbYyy 例程之前,文件系统必须调用 FsRtlInitializeLargeMcb。
如果发生池分配失败, FsRtlInitializeLargeMcb 将引发STATUS_INSUFFICIENT_RESOURCES异常。 若要控制是否发生此池分配失败,驱动程序应在 try-except 或 try-finally 语句中包装对 FsRtlInitializeLargeMcb 的调用。
要求
要求 | 值 |
---|---|
目标平台 | 通用 |
标头 | ntifs.h (包括 Ntifs.h) |
Library | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <= APC_LEVEL |