Função KeInvalidateRangeAllCaches (ntddk.h)
A rotina KeInvalidateRangeAllCaches libera o intervalo de endereços virtuais especificado de todos os caches de processador.
Sintaxe
void KeInvalidateRangeAllCaches(
PVOID BaseAddress,
ULONG Length
);
Parâmetros
BaseAddress
Um ponteiro para a base da região a ser liberada.
Length
O tamanho da região a ser liberada, em bytes.
Retornar valor
Nenhum
Comentários
A rotina KeInvalidateRangeAllCaches libera o intervalo de endereços virtuais especificado nos caches de cada processador e marca o conteúdo de cada cache inválido. Os caches do processador têm a garantia de ter concluído a operação de liberação antes que KeInvalidateRangeAllCaches retorne.
Essa função está disponível em todas as plataformas e substitui KeInvalidateAllCaches. Nem todas as arquiteturas, como o Arm64, dão suporte a uma maneira confiável de liberar todo o cache, portanto, KeInvalidateAllCaches não está disponível em todas as plataformas. Também é significativamente mais eficiente liberar o intervalo de memória específico afetado do que todo o conteúdo do cache.
Essa função libera o cache para todos os mapeamentos virtuais da mesma memória física subjacente.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Disponível no Windows Vista e versões posteriores do Windows. |
Servidor mínimo com suporte | Disponível no Windows Server 2008 e versões posteriores do Windows. |
Cabeçalho | ntddk.h |
IRQL | <= DISPATCH_LEVEL |