!ptov
Die Erweiterung !ptov zeigt die gesamte physisch-virtuelle Karte für einen bestimmten Prozess an.
!ptov DirBase
Parameter
DirBase
Gibt die Verzeichnisbasis für den Prozess an. Um die Verzeichnisbasis zu ermitteln, verwenden Sie den Befehl !process, und sehen Sie sich den Wert an, der für DirBase angezeigt wird.
DLL
Kdexts.dll
Hinweise
Beispiel: Verwenden Sie zuerst .process und !process, um die Verzeichnisbasis des aktuellen Prozesses zu ermitteln:
1: kd> .process
Implicit process is now 852b4040
1: kd> !process 852b4040 1
PROCESS 852b4040 SessionId: none Cid: 0004 Peb: 00000000 ParentCid: 0000
DirBase: 00185000 ObjectTable: 83203000 HandleCount: 663.
Image: System
...
In diesem Fall ist die Verzeichnisbasis 0x00185000. Übergeben Sie diese Adresse an !ptov:
1: kd> !ptov 185000
X86PtoV: pagedir 185000, PAE enabled.
15e11000 10000
549e6000 20000
...
60a000 210000
40b000 211000
...
54ad3000 25f000
548d3000 260000
...
d71000 77510000
...
Die Zahlen in der linken Spalte sind die physischen Adressen jeder Speicherseite, die über eine Zuordnung für diesen Prozess verfügt. Die Zahlen in der rechten Spalte sind die virtuellen Adressen, denen sie zugeordnet sind.
Die Gesamtanzeige ist sehr lang.
Hier ist ein 64-Bit-Beispiel.
3: kd> .process
Implicit process is now fffffa80`0361eb30
3: kd> !process fffffa80`0361eb30 1
PROCESS fffffa800361eb30
SessionId: none Cid: 0004 Peb: 00000000 ParentCid: 0000
DirBase: 00187000 ObjectTable: fffff8a000002870 HandleCount: 919.
Image: System
...
3: kd> !ptov 187000
Amd64PtoV: pagedir 187000
00000001`034fb000 1d0000
a757c000 1d1000
00000001`0103d000 1d2000
c041e000 1d3000
...
2ed6f000 fffff680`00001000
00000001`13939000 fffff680`00003000
ceefb000 fffff680`00008000
...
Die Verzeichnisbasis ist die physische Adresse der ersten Tabelle, die in der Übersetzung virtueller Adressen verwendet wird. Diese Tabelle weist je nach Bitanzahl des Zielbetriebssystems unterschiedliche Namen auf und gibt an, ob die physische Adresserweiterung (Physical Address Extension, PAE) für das Zielbetriebssystem aktiviert ist.
Bei 64-Bit-Windows ist die Verzeichnisbasis die physische Adresse der Page Map Level 4-Tabelle (PML4). Bei 32-Bit-Windows mit aktiviertem PAE ist die Verzeichnisbasis die physische Adresse der Page Directory Pointers-Tabelle (PDP). Bei 32-Bit-Windows mit deaktiviertem PAE ist die Verzeichnisbasierung die physische Adresse der Page Directory-Tabelle (PD).
Verwandte Themen finden Sie unter !vtop und Konvertieren virtueller Adressen in physische Adressen. Informationen zur virtuellen Adressübersetzung finden Sie in Microsoft Windows Internals von Mark Russinovich und David Solomon.