Funzione FsRtlInitializeLargeMcb (ntifs.h)
La routine FsRtlInitializeLargeMcb inizializza una struttura mcb (Map Control Block).
Sintassi
void FsRtlInitializeLargeMcb(
PLARGE_MCB Mcb,
[in] POOL_TYPE PoolType
);
Parametri
Mcb
Puntatore a una struttura MCB allocata dal chiamante per l'inizializzazione.
[in] PoolType
Tipo di pool da usare per l'allocazione di spazio di archiviazione interno aggiuntivo per mcb. Uno dei seguenti:
- NonPagedPool
- PagedPool
- NonPagedPoolCacheAligned
- pagedPoolCacheAligned
I nonPagedPoolMustSucceed e nonPagedPoolCacheAlignedMustS tipi di pool sono obsoleti e non devono più essere usati.
Valore restituito
Nessuno
Osservazioni
FsRtlInitializeLargeMcb inizializza una struttura mcb (Map Control Block). I file system usano strutture MCB per eseguire il mapping dei numeri di blocco virtuale (VBN) per un file ai numeri di blocco logici corrispondenti (LBN) su disco.
I 32 bit superiori del codice LBN vengono ignorati. Vengono usati solo i 32 bit inferiori.
I file system devono chiamare FsRtlInitializeLargeMcb prima di usare qualsiasi altra routine fsRtlXxxMcbYyy nella struttura MCB.
Se si verifica un errore di allocazione del pool, FsRtlInitializeLargeMcb genera un'eccezione STATUS_INSUFFICIENT_RESOURCES. Per controllare se si verifica questo errore di allocazione del pool, il driver deve eseguire il wrapping della chiamata a FsRtlInitializeLargeMcb in un try-except o istruzione try-finally.
Fabbisogno
Requisito | Valore |
---|---|
piattaforma di destinazione | Universale |
intestazione |
ntifs.h (include Ntifs.h) |
libreria |
NtosKrnl.lib |
dll | NtosKrnl.exe |
IRQL | <= APC_LEVEL |