Função RtlInitializeBitMap (wdm.h)
A rotina RtlInitializeBitMap inicializa o cabeçalho de uma variável bitmap.
Sintaxe
NTSYSAPI VOID RtlInitializeBitMap(
[out] PRTL_BITMAP BitMapHeader,
[in] __drv_aliasesMem PULONG BitMapBuffer,
[in] ULONG SizeOfBitMap
);
Parâmetros
[out] BitMapHeader
Ponteiro para uma estrutura de RTL_BITMAP vazia.
[in] BitMapBuffer
Ponteiro para memória alocada pelo chamador para o bitmap em si. O endereço base desse buffer deve estar alinhado ao ULONG. O tamanho do buffer alocado deve ser um número inteiro múltiplo de bytes sizeof(ULONG).
[in] SizeOfBitMap
Especifica o número de bits no bitmap. Esse valor pode ser qualquer número de bits que caberá no buffer alocado para o bitmap.
Retornar valor
Nenhum
Comentários
Um driver pode usar uma variável bitmap como uma maneira econômica de acompanhar um conjunto de itens reutilizáveis. Por exemplo, os sistemas de arquivos usam uma variável bitmap para rastrear quais clusters/setores em um disco já foram alocados para armazenar dados de arquivo. O driver de porta SCSI fornecido pelo sistema usa uma variável bitmap para rastrear quais marcas de fila foram atribuídas a SRBs (blocos de solicitação SCSI).
RtlInitializeBitMap deve ser chamado antes de qualquer outra rotina RtlXxx que opere em uma variável bitmap. O ponteiro BitMapHeader é um parâmetro de entrada em todas as chamadas RtlXxx subsequentes que operam na variável bitmap do chamador no BitMapBuffer. O chamador é responsável por sincronizar o acesso à variável bitmap.
RtlInitializeBitMap inicializa a estrutura de RTL_BITMAP fornecida pelo chamador copiando os valores BitMapBuffer e SizeOfBitMap fornecidos pelo chamador nele. Posteriormente, a estrutura pode ser passada para outras rotinas para manipular o bitmap. RtlInitializeBitMap não modifica o conteúdo do bitmap.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Disponível a partir do Windows 2000. |
Plataforma de Destino | Universal |
Cabeçalho | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
Biblioteca | NtosKrnl.lib |
DLL | NtosKrnl.exe (modo kernel); Ntdll.dll (modo de usuário) |
IRQL | Qualquer IRQL se BitMapHeader for residente em memória; <= APC_LEVEL se BitMapHeader for paginável ou no Windows 7 e anterior |