FsRtlInitializeLargeMcb-Funktion (ntifs.h)
Die FsRtlInitializeLargeMcb Routine initialisiert eine McB-Struktur (Map Control Block).
Syntax
void FsRtlInitializeLargeMcb(
PLARGE_MCB Mcb,
[in] POOL_TYPE PoolType
);
Parameter
Mcb
Zeiger auf eine vom Aufrufer zugewiesene MCB-Struktur, die initialisiert werden soll.
[in] PoolType
Typ des pools, der verwendet werden soll, wenn zusätzlichen internen Speicher für den MCB zugewiesen wird. Eine der folgenden:
- NonPagedPool-
- PagedPool-
- NonPagedPoolCacheAligned-
- PagedPoolCacheAligned-
Die NonPagedPoolMustSucceed und NonPagedPoolCacheAlignedMustS Pooltypen sind veraltet und sollten nicht mehr verwendet werden.
Rückgabewert
Nichts
Bemerkungen
FsRtlInitializeLargeMcb initialisiert eine MCB-Struktur (Map Control Block). Dateisysteme verwenden MCB-Strukturen, um virtuelle Blocknummern (VIRTUAL Block Numbers, VBN) für eine Datei den entsprechenden logischen Blocknummern (LBN) auf dem Datenträger zuzuordnen.
Die oberen 32 Bits des LBN werden ignoriert. Nur die unteren 32 Bit werden verwendet.
Dateisysteme müssen FsRtlInitializeLargeMcb- aufrufen, bevor sie andere FsRtlXxxMcbYyy Routinen für die MCB-Struktur verwenden.
Wenn ein Poolzuordnungsfehler auftritt, löst FsRtlInitializeLargeMcb eine STATUS_INSUFFICIENT_RESOURCES Ausnahme aus. Um die Kontrolle zu erlangen, wenn dieser Poolzuweisungsfehler auftritt, sollte der Treiber den Aufruf von FsRtlInitializeLargeMcb- in einem try-except oder try-finally Anweisung umschließen.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform- | Universal |
Header- | ntifs.h (einschließlich Ntifs.h) |
Library | NtosKrnl.lib |
DLL- | NtosKrnl.exe |
IRQL- | <= APC_LEVEL |