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 beim Zuweisen von zusätzlichem internen Speicher für den MCB verwendet werden soll. Einer der folgenden:
- NonPagedPool
- PagedPool
- NonPagedPoolCacheAligned
- PagedPoolCacheAligned
Die Pooltypen NonPagedPoolMustSucceed und NonPagedPoolCacheAlignedMustS sind veraltet und sollten nicht mehr verwendet werden.
Rückgabewert
Keine
Bemerkungen
FsRtlInitializeLargeMcb initialisiert eine MCB-Struktur (Map Control Block). Dateisysteme verwenden MCB-Strukturen, um virtuelle Blocknummern (VBN) für eine Datei den entsprechenden logischen Blocknummern (LOGICAL Block Numbers, LBN) auf dem Datenträger zuzuordnen.
Die oberen 32 Bits des LBN werden ignoriert. Es werden nur die unteren 32 Bits verwendet.
Dateisysteme müssen FsRtlInitializeLargeMcb aufrufen, bevor sie andere FsRtlXxxMcbYyyy-Routinen in der MCB-Struktur verwenden.
Wenn ein Poolzuordnungsfehler auftritt, löst FsRtlInitializeLargeMcb eine STATUS_INSUFFICIENT_RESOURCES Ausnahme aus. Um die Kontrolle zu erhalten, wenn dieser Poolzuordnungsfehler auftritt, sollte der Treiber den Aufruf von FsRtlInitializeLargeMcb in einer try-except- oder try-finally-Anweisung umschließen.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Universell |
Header | ntifs.h (include Ntifs.h) |
Bibliothek | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <= APC_LEVEL |