Не могу понять, как работает диспетчер памяти Windows.Я смотрю на прикрепленный пользовательский процесс (dbgview.exe
).Это WOW64-процесс.По указанному адресу (0x76560000
) находится секция .text
модуля kernel32.dll
(также WOW64).Почему в таблице страниц процесса нет PTE и других таблиц, указывающих на эти виртуальные адреса?
kd> db 76560000
00000000`76560000 8b ff 55 8b ec 51 56 57-33 f6 89 55 fc 56 68 80 ..U..QVW3..U.Vh.
<...>
kd> !pte 76560000
VA 0000000076560000
PXE at FFFFF6FB7DBED000 PPE at FFFFF6FB7DA00008 PDE at FFFFF6FB40001D90 PTE at FFFFF680003B2B00
Unable to get PXE FFFFF6FB7DBED000
kd> db FFFFF680003B2B00
fffff680`003b2b00 ?? ?? ?? ?? ?? ?? ?? ??-?? ?? ?? ?? ?? ?? ?? ?? ???????????????
<...>
Я знаю, что страницы будут выделяться после первого доступа (с ошибкой страницы), но почемупрототип PTE тоже нет?