что означает <unclassified>в адресной книге windbg! - PullRequest
4 голосов
/ 05 февраля 2010

Пример:

0:074> !address -summary


--- Usage Summary ---------------- RgnCount ----------- Total Size -------- %ofBusy %ofTotal
Free                                  90919      7ec`34659000 (   7.923 Tb)           99.03%
<unclassified>                        95426       12`3c3e9000 (  72.941 Gb)  92.12%    0.89%
Heap                                    744        1`7ee50000 (   5.983 Gb)   7.56%    0.07%
Image                                  4303        0`0f890000 ( 248.563 Mb)   0.31%    0.00%
Stack                                   225        0`00de9000 (  13.910 Mb)   0.02%    0.00%
TEB                                      75        0`00096000 ( 600.000 kb)   0.00%    0.00%
ActivationContextData                    28        0`00025000 ( 148.000 kb)   0.00%    0.00%
NlsTables                                 1        0`00023000 ( 140.000 kb)   0.00%    0.00%
CsrSharedMemory                           1        0`00006000 (  24.000 kb)   0.00%    0.00%
PEB                                       1        0`00001000 (   4.000 kb)   0.00%    0.00%

Ответы [ 2 ]

1 голос
/ 30 мая 2017

<unclassified> - для выделений, которые в дальнейшем не отслеживаются другими менеджерами памяти и, таким образом, выделяются через VirtualAlloc() с точки зрения WinDbg. В более новых версиях WinDbg это называется <unknown>.

Существуют различные причины, по которым память классифицируется таким образом:

  • прямые звонки на VirtualAlloc() конечно
  • выделения через диспетчер кучи Windows, размер которых превышает 512 КБ (см. Оператор Саша Гольдштейн ).
  • выделения среды выполнения .NET (в которой есть свои кучи, неизвестные WinDbg, пока вы не используете специальное расширение SOS)
  • некоторые версии MSXML
  • потенциальные другие менеджеры памяти, например менеджер кучи из Java или Python (просто предположение, я никогда не проверял)
1 голос
/ 10 февраля 2010

Хм, это дикая догадка, но вещи, которые могут занимать пространство виртуальной машины, которых нет в этом списке, напрямую вызывают VirtualAlloc или файлы с отображением в памяти. VMMap может оказаться более полезным здесь.

...