Condividi tramite


Funzione FsRtlSplitLargeMcb (ntifs.h)

La routine FsRtlSplitLargeMcb inserisce un foro nei mapping in un blocco di controllo mappa (MCB).

Sintassi

BOOLEAN FsRtlSplitLargeMcb(
  [in] PLARGE_MCB Mcb,
  [in] LONGLONG   Vbn,
  [in] LONGLONG   Amount
);

Parametri

[in] Mcb

Puntatore alla struttura MCB.

[in] Vbn

Avvio del numero di blocco virtuale (VBN) dell'intervallo di mapping da spostare verso l'alto Amount per fare spazio per il foro.

[in] Amount

Numero di settori (VBN) nel foro da creare.

Valore restituito

fsRtlSplitLargeMcb restituisce true se il foro è stato creato correttamente, false in caso contrario.

Osservazioni

Un foro è un intervallo di VBN non mappati che formano uno spazio tra due mapping.

Se si verifica un errore di allocazione del pool, FsRtlSplitLargeMcb genera un'eccezione STATUS_INSUFFICIENT_RESOURCES. Per ottenere il controllo se si verifica questo errore di allocazione del pool, il driver deve eseguire il wrapping della chiamata a FsRtlSplitLargeMcb 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

Vedere anche

FsRtlAddLargeMcbEntry

FsRtlGetNextLargeMcbEntry

FsRtlInitializeLargeMcb

FsRtlLookupLargeMcbEntry

FsRtlLookupLastLargeMcbEntry

FsRtlLookupLastLargeMcbEntryAndIndex

FsRtlNumberOfRunsInLargeMcb

FsRtlRemoveLargeMcbEntry

FsRtlTruncateLargeMcb

FsRtlUninitializeLargeMcb