структура POINTER_SEARCH_PHYSICAL (wdbgexts.h)
Операция Ioctl IG_POINTER_SEARCH_PHYSICAL ищет в физической памяти целевого объекта указатели, находящиеся в указанном диапазоне. При вызове Ioctl с параметром IoctlType , для IG_POINTER_SEARCH_PHYSICAL , IpvData должен содержать экземпляр структуры POINTER_SEARCH_PHYSICAL.
Синтаксис
typedef struct _POINTER_SEARCH_PHYSICAL {
IN ULONG64 Offset;
IN ULONG64 Length;
IN ULONG64 PointerMin;
IN ULONG64 PointerMax;
IN ULONG Flags;
OUT PULONG64 MatchOffsets;
IN ULONG MatchOffsetsSize;
OUT ULONG MatchOffsetsCount;
} POINTER_SEARCH_PHYSICAL, *PPOINTER_SEARCH_PHYSICAL;
Члены
Offset
Указывает адрес в физической памяти целевого объекта для начала поиска.
Length
Указывает объем физической памяти целевого объекта для поиска.
PointerMin
Задает нижний предел диапазона указателей для поиска.
PointerMax
Задает верхнюю границу диапазона указателей для поиска.
Flags
Задает битовые флаги, которые изменяют поведение этой операции Ioctl . Можно включить следующие флаги.
Flag | Поведение при установке |
---|---|
PTR_SEARCH_PHYS_ALL_HITS | Возвращает все указатели в указанном диапазоне. Если этот флаг не задан, возвращается только один указатель на страницу. |
PTR_SEARCH_PHYS_PTE | В памяти выполняется поиск записи таблицы страницы (PTE), которая соответствует номеру кадра страницы, указанному в параметре PointerMin. |
PTR_SEARCH_PHYS_RANGE_CHECK_ONLY | |
PTR_SEARCH_NO_SYMBOL_CHECK | Не проверка, что символы, используемые для ядра, являются правильными. |
MatchOffsets
Получает адреса всех указателей, соответствующих условиям поиска. MatchOffsets — это массив, содержащий элементы MatchOffsetsSize .
MatchOffsetsSize
Указывает количество записей в массиве MatchOffsets.
MatchOffsetsCount
Получает количество найденных указателей, соответствующих условиям поиска.
Комментарии
Параметры для операции Ioctl IG_POINTER_SEARCH_PHYSICAL являются элементами структуры POINTER_SEARCH_PHYSICAL.
Требования
Требование | Значение |
---|---|
Заголовок | wdbgexts.h (включая Wdbgexts.h, Dbgeng.h) |