Win32 Поиск всей выделенной памяти - PullRequest
0 голосов
/ 05 августа 2020

Я хотел бы знать, правильно ли мое предположение, в моем проекте я хотел бы точно знать, какую память выделил мой процесс и дочерний процесс, поэтому после исследования я перешел через win32 api, GetProcessHeaps(), в документации говорится Я могу перечислить все кучи, выделенные процессом, и получить их размер. Однако я столкнулся с другим вопросом, где в каждом потоке будет располагаться стек. У меня истек срок действия GetCurrentThreadStackLimits(), который возвращает начальный и конечный адрес. Но я не мог читать непосредственно из этой памяти.

Может быть, кто-нибудь сможет направить меня в правильном направлении или немного объяснить, как найти каждый кусок памяти, который использует процесс.

В основном отладчик каким-то образом знает, какую часть памяти вы зарезервировали, а какие нет. следовательно, некоторая часть виртуальной памяти вы можете прочитать, а некоторые части просто не можете, потому что вы не зарезервировали ее, и она не отображается на физическую память.

Вопрос в основном касается перечисления распределения, определения их расположение и размер, и чтение с них. Так же, как это делает отладчик.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...