给定虚拟块号(VBN)和地图控制块(MCB),FsRtlLookupLargeMcbEntry 例程搜索 MCB 以获取对应于指定 VBN 的映射信息。
语法
BOOLEAN FsRtlLookupLargeMcbEntry(
PLARGE_MCB Mcb,
LONGLONG Vbn,
PLONGLONG Lbn,
PLONGLONG SectorCountFromLbn,
PLONGLONG StartingLbn,
PLONGLONG SectorCountFromStartingLbn,
[out, optional] PULONG Index
);
参数
Mcb
指向初始化的 MCB 结构的指针。
Vbn
指向请求的 VBN 的指针。
Lbn
指向接收映射到映射条目中 LargeVbn 的 LBN 的变量的指针,或者 -1 不存在此类 LBN。 此参数是可选的,可以是 NULL。
SectorCountFromLbn
指向一个变量,该变量接收映射运行中 LargeVbn 后面的扇区数。 此参数是可选的,可以是 NULL。
StartingLbn
指向接收对应于映射运行开始的 LBN 的变量的指针,或 -1(如果不存在此类 LBN)。 此参数是可选的,可以是 NULL。
SectorCountFromStartingLbn
指向接收映射运行中扇区数的变量的指针。 此参数是可选的,可以是 NULL。
[out, optional] Index
指向接收包含 VBN 的映射运行的索引的变量的指针。 此参数是可选的,可以是 NULL。
返回值
FsRtlLookupLargeMcbEntry 如果指定的 VBN 位于 MCB 映射的 VBN 范围内,则返回 TRUE;否则为 FALSE。
言论
FsRtlLookupLargeMcbEntry 搜索运行包含指定 VBN 的 MCB 中的映射条目。
如果存在此类映射,则查找作将为相应的 LBN 和扇区计数生成正值,FsRtlLookupLargeMcbEntry 返回 TRUE。
如果不存在此类映射,但指定的 VBN 低于 MCB 映射的最高 VBN,则称为映射中的一个洞。 在这种情况下,FsRtlLookupLargeMcbEntry 仍返回 TRUE,但查找作将为 LBN 生成 -1 值。
如果指定的 VBN 高于 MCB 映射的最高 VBN,或者 MCB 不包含映射,FsRtlLookupLargeMcbEntry 返回 FALSE。
忽略 LBN 的上 32 位。 仅使用较低的 32 位。
要求
| 要求 | 价值 |
|---|---|
| 目标平台 | 普遍 |
| 标头 | ntifs.h (include Ntifs.h) |
| 库 | NtosKrnl.lib |
| DLL | NtosKrnl.exe |
| IRQL | <= APC_LEVEL |