!pte
!pte 延伸模組會顯示指定地址的頁面數據表專案 (PTE) 和頁面目錄專案 (PDE)。
語法
!pte VirtualAddress
!pte PTE
!pte LiteralAddress 1
參數
VirtualAddress
指定想要其頁面數據表的虛擬位址。
PTE
指定實際 PTE 的位址。
LiteralAddress **** 1
指定實際 PTE 或 PDE 的位址。
DLL
Kdexts.dll
其他資訊
如需頁面數據表、頁面目錄和狀態位說明的相關信息,請參閱 Mark Russinovich 和 David 所羅門的 windows 內部Microsoft。
備註
如果提供一個參數,而且此參數是儲存分頁表之內存區域中的位址,調試程式會將此 視為 PTE 參數。 此參數會視為所需 PTE 的實際位址,而調試程式將會顯示此 PTE 和對應的 PDE。
如果提供一個參數,而且此參數不是此區域中的位址,調試程式會將此參數 視為 VirtualAddress 參數。 會顯示保存此位址對應的 PTE 和 PDE。
如果提供兩個參數,而第二個參數是 1 (或任何其他小數位),調試程式會將第一個參數 視為 LiteralAddress。 此位址會解譯為 PTE 的實際位址,也會解譯為 PDE 的實際位址,而且會顯示對應的(且可能無效)數據。
(僅限 x86 或 x64 目標電腦)如果提供兩個參數,而第二個參數大於第一個參數,調試程式會將這兩個參數 視為 StartAddress 和 EndAddress。 命令接著會顯示指定記憶體範圍中每個頁面的 PTE。
如需所有系統 PTE 的清單,請使用 !sysptes 擴充功能。
以下是 x86 目標電腦的範例:
kd> !pte 801544f4
801544F4 - PDE at C0300800 PTE at C0200550
contains 0003B163 contains 00154121
pfn 3b G-DA--KWV pfn 154 G--A--KRV
此範例的第一行會重述正在調查的虛擬位址。 然後,它會提供 PDE 和 PTE 的虛擬位址,其中包含此位址之虛擬實體對應的相關信息。
第二行會提供 PDE 和 PTE 的實際內容。
第三行會採用這些內容並加以分析,將它們分成頁面框架編號 (PFN) 和狀態位。
如需如何解譯和使用 PFN 的資訊,請參閱 !pfn 擴充功能或將虛擬位址轉換成實體位址一節。
在 x86 或 x64 目標電腦上,下表顯示 PDE 和 PTE 的狀態位。 !pte 顯示會以大寫字母或破折號表示這些位,並新增其他資訊。
位元 | 設定時顯示 | 清除時顯示 | 意義 |
---|---|---|---|
0x200 |
C |
- |
寫入時複製。 |
0x100 |
G |
- |
全域。 |
0x80 |
L |
- |
大型頁面。 這隻會發生在 PDB 中,絕不發生在 PDB 中。 |
0x40 |
D |
- |
髒。 |
0x20 |
A |
- |
訪問。 |
0x10 |
否 |
- |
快取已停用。 |
0x8 |
T |
- |
寫入。 |
0x4 |
U |
K |
擁有者(使用者模式或核心模式)。 |
0x2 |
星期三 |
R |
可寫入或唯讀。 只有在多處理器計算機上,以及執行 Windows Vista 或更新版本的任何電腦。 |
0x1 |
V |
有效。 |
|
E |
- |
可執行文件頁面。 對於不支持硬體執行/noexecute 位的平臺,包括許多 x86 系統,一律會顯示 E。 |