6

完全なクラッシュ ダンプ (*.dmp) ファイルを解析し、プライベート バイト データを取得したいと考えています。SysInternals の VMMap は、プライベート バイト、ヒープなどの量をすべて教えてくれることを知っていますが、ダンプがあれば、それを解析して、ヒープ (マネージ ヒープ) 構造とデータを取得できるはずです。ヒープ。PEB を読み取ってからヒープを調べることで、これは既に完了しています。

私が理解できないのは、プライベート バイト (ネイティブ コードのプロセス データであるはずのヒープ以外) を読み取る方法です。クラッシュダンプからヒープ以外のプライベートバイトを解析できるように、誰かが私を正しい方向に向けてください。

ありがとう。

4

1 に答える 1

6
!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%

不明なのは仮想割り当てです。

実行できる不明なメモリ領域を一覧表示するには、次のコマンドを実行します。

!address -f:VAR

debugger.chm で定義されている VAR - ビジー リージョン。これらの領域には、すべての仮想割り当てブロック、SBH ヒープ、カスタム アロケーターからのメモリ、および他の分類に分類されないアドレス空間の他のすべての領域が含まれます。

于 2011-12-13T12:36:35.350 に答える