Разбор дампа сбоя в WinDbg для личных байтов (кроме управляемой кучи)?

95
11

Я хочу проанализировать полный файл аварийного дампа (*.dmp) и получить данные личных байтов. Я знаю, что VMMap SysInternals может рассказать мне, сколько моих личных байтов, кучи и т.д. - все, кроме того, что мне нужно, - если у меня есть дамп, я должен разбираться и получать структуру и данные кучи (управляемой кучи) в куча. Я уже делал это, читая PEB, а затем гулял по кучам.


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


Спасибо.

спросил(а) 2011-02-03T14:15:00+03:00 9 лет, 5 месяцев назад
1
Решение
97

! address -summary


В первом разделе вы получите разбивку об использовании:


--- Usage Summary ---------------- RgnCount ----------- Total Size -------- %ofBusy %ofTotal
Free 170 6f958000 ( 1.743 Gb) 87.18%
<unknown> 477 6998000 ( 105.594 Mb) 40.21% 5.16%
Stack 417 5d00000 ( 93.000 Mb) 35.42% 4.54%
Image 253 3970000 ( 57.438 Mb) 21.87% 2.80%
Heap 20 600000 ( 6.000 Mb) 2.28% 0.29%
TEB 93 5d000 ( 372.000 kb) 0.14% 0.02%
Other 9 32000 ( 200.000 kb) 0.07% 0.01%
PEB 1 1000 ( 4.000 kb) 0.00% 0.00%

Неизвестно было бы виртуальным allocs.

Чтобы отобразить неизвестные области памяти, вы можете запустить:


! address -f: VAR


VAR, как определено в разделе debugger.chm - Занятые области. Эти регионы включают в себя все блоки виртуального распределения, кучу SBH, память из пользовательских распределителей и все другие области адресного пространства, которые не попадают ни в какую другую классификацию.

ответил(а) 2011-12-13T15:36:00+04:00 8 лет, 6 месяцев назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема