Поделиться через


Дисплей PoolMon

PoolMon отображает столбцы данных о выделении памяти пула в командном окне. Используйте клавиши со стрелками, PAGE UP и PAGE DOWN для прокрутки данных.

Примечание

Чтобы увидеть весь экран PoolMon, размер окна командной строки должен быть не менее 80 символов в ширину (ширина = 80) и не менее 53 строк (высота = 53); и буфер окна командной строки должен быть не менее 500 символов в ширину (ширина = 500) и не менее 2000 строк (высота = 2000). В противном случае дисплей может быть усечен.

В следующей таблице описаны столбцы в отображении PoolMon.

Имя столбца Описание
Тег 4-байтовый тег, назначенный выделению пула.
Тип Указывает, находятся ли выделения памяти в страничных или несгружаемых байтах.
Распределить Количество выделений.
( ) Изменение количества выделений с момента последнего обновления.
Освобождает Количество свободных операций.
( ) Изменение количества выделений с момента последнего обновления.
Поиск различий Количество выделений за вычетом числа свободных операций.
Байт Используемый размер выделений в байтах.
( ) Изменение размера выделения с момента последнего обновления.
За распределить Значение байтов, разделенное на значение Diff.
Mapped_Driver Локальные драйверы, другие часто используемые драйверы и системные компоненты (/g), которым присваивается значение тега пула. Этот столбец отображается только при использовании параметра /g .

Следующий пример выходных данных PoolMon отсортирован по количеству выделений. (Чтобы отсортировать отображение таким образом, запустите PoolMon с параметром /a .)

 Memory:  260620K Avail:   96364K  PageFlts:     0   InRam Krnl: 1916K P:17856K
 Commit: 203500K Limit: 640916K Peak: 260632K            Pool N: 8332K P:27220K
 System pool information
 Tag  Type     Allocs            Frees            Diff   Bytes       Per Alloc

 Wait Nonp    3971107 (   0)   3971077 (   0)       30    8456 (     0)    281
 ObSt Nonp    2791258 (   0)   2791258 (   0)        0       0 (     0)      0
 Gxlt Paged   1161638 (   0)   1161630 (   0)        8     864 (     0)    108
 Ustm Paged   1088342 (   0)   1088298 (   0)       44    2464 (     0)     56
 Io   Nonp    1021112 (   1)   1020985 (   1)      127   91912 (     0)    723
 ObSq Paged    967615 (   0)    967615 (   0)        0       0 (     0)      0
 Key  Paged    954821 (   0)    953979 (   0)      842   87528 (     0)    103
 SePa Nonp     680348 (   0)    680321 (   0)       27    3656 (     0)    135

Частота обновлений

PoolMon обновляет свой дисплей каждые пять секунд. Вы не можете программно изменить частоту обновления. Однако вы можете принудительно обновить результаты PoolMon, щелкнув некоторые клавиши, если окно PoolMon запущено в фокусе. Ctrl и ALT, например, принудительное обновление; Однако экран "Печать" не работает.

Накопленные значения

Данные, отображаемые PoolMon, собираются и вычисляются Windows при каждом включении тегов пула. Значения выделений, свободных операций и используемых байтов накапливаются с момента запуска Windows и монотонно увеличиваются до перезапуска Windows. Если драйвер или компонент запускается после запуска Windows, значения накапливаются с момента последнего запуска драйвера или компонента и сбрасываются только при перезапуске драйвера или системы.

Интерпретация значений тегов

Все выделения памяти пула имеют теги, но не все они имеют значения тегов характеристики. Выделения памяти пула имеют характерные значения тегов, когда драйвер, который выделяет память, задает значение тега с помощью ExAllocatePoolWithTag или ExAllocatePoolWithQuotaTag. Если драйвер не назначает значение тега (ExAllocatePool, ExAllocatePoolWithQuota), Windows по-прежнему создает тег, но присваивает значение тега по умолчанию None. В результате вы не сможете отличить статистику для выделений этого драйвера от статистики других выделений пула.