Поделиться через


!pte

Расширение !pte отображает запись таблицы страницы (PTE) и запись каталога страницы (PDE) для указанного адреса.

Синтаксис

!pte VirtualAddress 
!pte PTE 
!pte LiteralAddress 1 

Параметры

VirtualAddress
Указывает виртуальный адрес, таблица страниц которого является требуемой.

PTE
Указывает адрес фактического PTE.

ЛитералAddress **** 1
Указывает адрес фактического PTE или PDE.

DLL-библиотеки

Kdexts.dll

Дополнительная информация

Сведения о таблицах страниц, каталогах страниц и объяснении битов состояния см. в разделе "Внутренние элементы Microsoft Windows", Марк Руссинович и Дэвид Соломон.

Замечания

Если указан один параметр и этот параметр является адресом в области памяти, в которой хранятся таблицы страниц, отладчик обрабатывает это как параметр PTE . Этот параметр принимается в качестве фактического адреса требуемого PTE, а отладчик будет отображать этот PTE и соответствующий PDE.

Если указан один параметр и этот параметр не является адресом в этом регионе, отладчик обрабатывает это как параметр VirtualAddress . Отображаются PTE и PDE, которые содержат сопоставление для этого адреса.

Если заданы два параметра, а второй параметр равен 1 (или другому небольшому числу), отладчик обрабатывает первый параметр как LiteralAddress. Этот адрес интерпретируется как фактический адрес PTE, а также как фактический адрес PDE, а соответствующие (и, возможно, недопустимые) данные будут отображаться.

(только на целевом компьютере x86 или x64) Если заданы два параметра, а второй параметр больше первого, отладчик обрабатывает два параметра как StartAddress и EndAddress. Затем команда отображает PTEs для каждой страницы в указанном диапазоне памяти.

Для списка всех системных PTEs используйте расширение !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

-

Большая страница. Это происходит только в PDEs, никогда не в PTEs.

0x40

D

-

Грязный.

0x20

а

-

Доступ.

0x10

N

-

Кэш отключен.

0x8

T

-

Запись через.

0x4

U

тыс.

Владелец (режим пользователя или режим ядра).

0x2

Ср.

R

Доступная для записи или доступная только для чтения. Только на компьютерах с несколькими процессорами и на любом компьютере под управлением Windows Vista или более поздней версии.

0x1

V

Действительный.

E

-

Страница исполняемого файла. Для платформ, которые не поддерживают аппаратное выполнение/noexecute bit, включая многие системы x86, всегда отображается E.