Exibição de PoolMon
PoolMon exibe colunas de dados sobre alocações de memória do pool em uma janela de comando. Use as teclas de seta, PAGE UP e PAGE DOWN para percorrer os dados.
Observação
Para ver toda a exibição do PoolMon, o tamanho da janela do Prompt de Comando deve ter pelo menos 80 caracteres de largura (width=80) e pelo menos 53 linhas de altura (altura=53); e o buffer da janela do Prompt de Comando devem ter pelo menos 500 caracteres de largura (width=500) e pelo menos 2.000 linhas de altura (altura=2000). Caso contrário, a exibição poderá ser truncada.
A tabela a seguir descreve as colunas na exibição PoolMon.
Nome da coluna | Descrição |
---|---|
Tag | A marca de 4 bytes atribuída à alocação do pool. |
Tipo | Se as alocações de memória estão em bytes paginados ou não. |
Alocações | O número de alocações. |
( ) | A alteração no número de alocações desde a última atualização. |
Libera | O número de operações gratuitas. |
( ) | A alteração no número de alocações desde a última atualização. |
Diff | O número de alocações menos o número de operações gratuitas. |
Bytes | O tamanho das alocações, em bytes usados. |
( ) | A alteração no tamanho da alocação desde a última atualização. |
Per Alloc | O valor de Bytes dividido pelo valor de Diff. |
Mapped_Driver | Os drivers locais outros drivers e componentes do sistema comumente usados (/g) que atribuem o valor da marca do pool. Essa coluna aparece somente quando você usa o parâmetro /g . |
A saída poolMon de exemplo a seguir é classificada por número de alocações. (Para classificar sua exibição dessa maneira, inicie o PoolMon com o parâmetro /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
Taxa de Atualização
O PoolMon atualiza sua exibição a cada cinco segundos. Não é possível alterar programaticamente a taxa de atualização. No entanto, você pode forçar uma atualização dos resultados do PoolMon clicando em algumas teclas, se a janela poolMon estiver em execução em tiver foco. CTRL e ALT, por exemplo, forçam uma atualização; no entanto, a tela de impressão não.
Valores acumulados
Os dados exibidos pelo PoolMon são coletados e calculados pelo Windows sempre que a marcação de pool está habilitada. Os valores para alocações, operações gratuitas e bytes usados se acumulam a partir do momento em que o Windows é iniciado e aumentam monotonicamente até que o Windows seja reiniciado. Se um driver ou componente for iniciado depois que o Windows já tiver sido iniciado, os valores serão acumulados da última vez em que o driver ou componente foi iniciado e redefinidos somente quando o driver ou o sistema for reiniciado.
Interpretando valores de marca
Todas as alocações de memória do pool têm marcas, mas nem todas têm valores de marca característica. As alocações de memória do pool têm valores de marca característica quando o driver que aloca a memória define o valor da marca usando ExAllocatePoolWithTag ou ExAllocatePoolWithQuotaTag. Se o driver não atribuir um valor de marca (ExAllocatePool, ExAllocatePoolWithQuota), o Windows ainda criará uma marca, mas atribuirá o valor de marca padrão None. Como resultado, você não pode distinguir as estatísticas para as alocações desse driver das de outras alocações de pool.