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

Confira também

KeInvalidateAllCaches