Compartilhar via


Função FsRtlInitializeLargeMcb (ntifs.h)

A rotina FsRtlInitializeLargeMcb inicializa uma estrutura de MCB (bloco de controle de mapa).

Sintaxe

void FsRtlInitializeLargeMcb(
       PLARGE_MCB Mcb,
  [in] POOL_TYPE  PoolType
);

Parâmetros

Mcb

Ponteiro para uma estrutura MCB alocada por chamador para inicializar.

[in] PoolType

Tipo de pool a ser usado ao alocar armazenamento interno adicional para o MCB. Um dos seguintes:

  • NonPagedPool
  • do PagedPool
  • NonPagedPoolCacheAligned
  • PagedPoolCacheAligned

Os nonPagedPoolMustSucceed e nonPagedPoolCacheAlignedMustS tipos de pool são obsoletos e não devem mais ser usados.

Valor de retorno

Nenhum

Observações

FsRtlInitializeLargeMcb inicializa uma estrutura de MCB (bloco de controle de mapa). Os sistemas de arquivos usam estruturas mcb para mapear números de bloco virtual (VBN) para um arquivo para os números de bloco lógico correspondentes (LBN) no disco.

Os 32 bits superiores do LBN são ignorados. Somente os 32 bits inferiores são usados.

Os sistemas de arquivos devem chamar FsRtlInitializeLargeMcb antes de usar qualquer outra FsRtlXxxMcbrotinas de Yyy na estrutura do MCB.

Se ocorrer uma falha de alocação de pool, FsRtlInitializeLargeMcb gerará uma exceção STATUS_INSUFFICIENT_RESOURCES. Para obter controle se essa falha de alocação de pool ocorrer, o driver deverá encapsular a chamada para FsRtlInitializeLargeMcb em uma instrução try-except ou try-finally.

Requisitos

Requisito Valor
da Plataforma de Destino Universal
cabeçalho ntifs.h (inclua Ntifs.h)
biblioteca NtosKrnl.lib
de DLL NtosKrnl.exe
IRQL <= APC_LEVEL

Consulte também

FsRtlAddLargeMcbEntry

FsRtlGetNextLargeMcbEntry

FsRtlLookupLargeMcbEntry

FsRtlLookupLastLargeMcbEntry

FsRtlLookupLastLargeMcbEntryAndIndex

FsRtlNumberOfRunsInLargeMcb

FsRtlRemoveLargeMcbEntry

FsRtlSplitLargeMcb

FsRtlTruncateLargeMcb

FsRtlUninitializeLargeMcb