Función RtlFindSetBits (wdm.h)
La rutina RtlFindSetBits busca un intervalo de bits de conjunto de un tamaño solicitado dentro de un mapa de bits.
Sintaxis
NTSYSAPI ULONG RtlFindSetBits(
[in] PRTL_BITMAP BitMapHeader,
[in] ULONG NumberToFind,
[in] ULONG HintIndex
);
Parámetros
[in] BitMapHeader
Puntero a la estructura RTL_BITMAP que describe el mapa de bits. Esta estructura debe haber sido inicializada por la rutina RtlInitializeBitMap .
[in] NumberToFind
Especifica cuántos bits de conjunto contiguos cumplirán esta solicitud.
[in] HintIndex
Especifica una posición de bits de base cero alrededor de la que empezar a buscar un intervalo de bits establecido del tamaño especificado.
Valor devuelto
RtlFindSetBits devuelve el índice de bits inicial basado en cero para un intervalo de bits establecido del tamaño solicitado, o devuelve 0xFFFFFFFF si no encuentra ese intervalo dentro de la variable de mapa de bits especificada.
Comentarios
Para una llamada correcta, la posición de bits devuelta no es necesariamente equivalente a la hintIndex especificada. Si es necesario, RtlFindSetBits busca en todo el mapa de bits para buscar un intervalo de bits establecido del tamaño solicitado. Sin embargo, comienza a buscar el rango solicitado cerca de HintIndex, por lo que los autores de llamadas pueden encontrar este rango más rápidamente cuando pueden proporcionar sugerencias adecuadas sobre dónde empezar a buscar.
Los autores de llamadas de RtlFindSetBits deben ejecutarse en IRQL <= APC_LEVEL si la memoria que contiene la variable de mapa de bits es paginable o la memoria de BitMapHeader es paginable. De lo contrario, se puede llamar a RtlFindSetBits en cualquier IRQL.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Disponible a partir de Windows 2000. |
Plataforma de destino | Universal |
Encabezado | wdm.h (incluya Wdm.h, Ntddk.h, Ntifs.h) |
Library | NtosKrnl.lib |
Archivo DLL | NtosKrnl.exe |
IRQL | <= APC_LEVEL (consulte la sección Comentarios) |