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


!vprot

Расширение !vprot отображает сведения о защите виртуальной памяти.

!vprot [Address]

Параметры

Адрес
Указывает шестнадцатеричный адрес, состояние защиты памяти которого должно отображаться.

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

Uext.dll

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

Чтобы просмотреть сведения о защите памяти для всех диапазонов памяти, принадлежащих целевому процессу, используйте !vadump. Сведения о защите памяти см. в разделе "Внутренние компоненты Microsoft Windows" Марком Руссиновичем и Дэвидом Соломоном.

Замечания

Команда расширения !vprot может использоваться как для отладки в реальном времени, так и для отладки файлов дампа.

Рассмотрим пример:

0:000> !vprot 30c191c
BaseAddress: 030c1000
AllocationBase: 030c0000
AllocationProtect: 00000080 PAGE_EXECUTE_WRITECOPY
RegionSize: 00011000
State: 00001000 MEM_COMMIT
Protect: 00000010 PAGE_EXECUTE
Type: 01000000 MEM_IMAGE

На этом экране строка AllocationProtect показывает защиту по умолчанию, с помощью которую был создан весь регион. Обратите внимание, что отдельные адреса в этом регионе могут изменить защиту после выделения памяти (например, если вызывается VirtualProtect ). В строке "Защита" показана фактическая защита этого конкретного адреса. Возможные значения защиты: PAGE_NOACCESS, PAGE_READONLY, PAGE_READWRITE, PAGE_EXECUTE, PAGE_EXECUTE_READ, PAGE_EXECUTE_READWRITE, PAGE_WRITECOPY, PAGE_EXECUTE_WRITECOPY и PAGE_GUARD.

Строка состояния также применяется к конкретному виртуальному адресу, переданном в !vprot. Возможные значения состояния : MEM_COMMIT, MEM_FREE и MEM_RESERVE.

В строке "Тип" показан тип памяти. Возможные значения: MEM_IMAGE, MEM_MAPPED и MEM_PRIVATE.