!pte
L'extension !pte affiche l'entrée de la table des pages (PTE) et l'entrée du répertoire des pages (PDE) pour l'adresse spécifiée.
Syntaxe
!pte VirtualAddress
!pte PTE
!pte LiteralAddress 1
Paramètres
VirtualAddress
Spécifie l'adresse virtuelle dont la table des pages est souhaitée.
PTE
Spécifie l'adresse d'un PTE réel.
LittéralAddress **** 1
Spécifie l'adresse d'un PTE ou d'un PDE réel.
DLL
Kdexts.dll
Informations supplémentaires
Pour en savoir plus sur les tables de pages, les répertoires de pages et l'explication des bits d'état, consultez Microsoft Windows Internals, par Mark Russinovich et David Solomon.
Notes
Si un paramètre est fourni et que ce paramètre est une adresse dans la région de la mémoire où les tables de pages sont stockées, le débogueur le traite comme le paramètre PTE. Ce paramètre est considéré comme l'adresse réelle de l'ETP souhaité, et le débogueur affichera cet ETP et l'EDP correspondante.
Si un paramètre est fourni et que ce paramètre n'est pas une adresse dans cette région, le débogueur le traite comme le paramètre VirtualAddress. L'ETP et l'EDP qui contiennent le mappage de cette adresse sont affichés.
Si deux paramètres sont fournis et que le second paramètre est 1 (ou tout autre petit nombre), le débogueur traite le premier paramètre comme LiteralAddress. Cette adresse est interprétée comme l'adresse réelle d'un PTE et aussi comme l'adresse réelle d'un PDE, et les données correspondantes (et éventuellement invalides) seront affichées.
(ordinateur cible x86 ou x64 uniquement) Si deux paramètres sont fournis et que le second est supérieur au premier, le débogueur traite les deux paramètres comme StartAddress et EndAddress. La commande affiche ensuite les PTE pour chaque page de la plage de mémoire spécifiée.
Pour obtenir une liste de tous les PTE du système, utilisez l'extension !sysptes.
Voici un exemple tiré d'un ordinateur cible 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
La première ligne de cet exemple rappelle l'adresse virtuelle étudiée. Elle donne ensuite l'adresse virtuelle de l'EDP et de l'ETP, qui contiennent des informations sur le mappage virtuel-physique de cette adresse.
La deuxième ligne indique le contenu réel de l'EDP et de l'ETP.
La troisième ligne reprend ce contenu et l'analyse, en le décomposant en numéro de trame de page (PFN) et en bits d'état.
Consultez l'extension !pfn ou la section Conversion des adresses virtuelles en adresses physiques pour plus d'informations sur l'interprétation et l'utilisation du PFN.
Sur un ordinateur cible x86 ou x64, les bits d'état pour le PDE et le PTE sont indiqués dans le tableau suivant. L'écran !pte indique ces bits par des lettres majuscules ou des tirets, et ajoute également des informations supplémentaires.
bit | Affichage en cas d'activation | Affichage en cas d’effacement | Signification |
---|---|---|---|
0x200 |
C |
- |
Copie en écriture. |
0x100 |
G |
- |
Général. |
0x80 |
L |
- |
Grande page. Cela ne se produit que dans les PDE, jamais dans les PTE. |
0x40 |
D |
- |
Corrompu. |
0x20 |
A |
- |
Accédé. |
0x10 |
N |
- |
Cache désactivé. |
0x8 |
T |
- |
Passage en écriture. |
0x4 |
U |
K |
Propriétaire (mode utilisateur ou mode noyau). |
0x2 |
Me |
R |
Inscriptible ou en lecture seule. Uniquement sur les ordinateurs multiprocesseurs et sur tout ordinateur fonctionnant sous Windows Vista ou une version ultérieure. |
0x1 |
V |
Valide. |
|
E |
- |
Page exécutable. Pour les plates-formes qui ne prennent pas en charge un bit matériel d'exécution/de non-exécution, y compris de nombreux systèmes x86, le E est toujours affiché. |