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 |