FsRtlLookupLargeMcbEntry 関数 (ntifs.h)
仮想ブロック番号 (VBN) とマップ制御ブロック (MCB) が指定された場合、FsRtlLookupLargeMcbEntry ルーチンは、指定された VBN に対応するマッピング情報を MCB で検索します。
構文
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 を受け取る変数へのポインター。そのような LBN が存在しない場合は -1。 このパラメーターは省略可能であり、NULL にすることができます。
SectorCountFromLbn
マッピング実行で LargeVbn に続くセクターの数 受け取る変数へのポインター。 このパラメーターは省略可能であり、NULL にすることができます。
StartingLbn
マッピング実行の開始に対応する LBN を受け取る変数へのポインター。そのような LBN が存在しない場合は -1。 このパラメーターは省略可能であり、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 (Ntifs.h を含む) |
ライブラリ | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <= APC_LEVEL |