KeInvalidateRangeAllCaches 함수(ntddk.h)
KeInvalidateRangeAllCaches 루틴은 모든 프로세서 캐시에서 지정된 가상 주소 범위를 플러시합니다.
구문
void KeInvalidateRangeAllCaches(
PVOID BaseAddress,
ULONG Length
);
매개 변수
BaseAddress
플러시할 영역의 베이스에 대한 포인터입니다.
Length
플러시할 영역의 크기(바이트)입니다.
반환 값
없음
설명
KeInvalidateRangeAllCaches 루틴은 각 프로세서의 캐시에서 지정된 가상 주소 범위를 플러시하고 각 캐시의 콘텐츠를 유효하지 않음으로 표시합니다. 프로세서 캐시는 KeInvalidateRangeAllCaches 가 반환되기 전에 플러시 작업을 완료하도록 보장됩니다.
이 함수는 모든 플랫폼에서 사용할 수 있으며 KeInvalidateAllCaches를 대체합니다. Arm64와 같은 모든 아키텍처가 전체 캐시를 플러시하는 신뢰할 수 있는 방법을 지원하는 것은 아니므로 KeInvalidateAllCaches 는 모든 플랫폼에서 사용할 수 없습니다. 또한 전체 캐시 콘텐츠보다 영향을 받는 특정 메모리 범위를 플러시하는 것이 훨씬 더 효율적입니다.
이 함수는 동일한 기본 실제 메모리의 모든 가상 매핑에 대한 캐시를 플러시합니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows Vista 및 이후 버전의 Windows에서 사용할 수 있습니다. |
지원되는 최소 서버 | Windows Server 2008 이상 버전의 Windows에서 사용할 수 있습니다. |
머리글 | ntddk.h |
IRQL | <= DISPATCH_LEVEL |