PoolMon은 명령 창에 풀 메모리 할당에 대한 데이터 열을 표시합니다. 화살표 키, PAGE UP 및 PAGE DOWN 키를 사용하여 데이터를 스크롤합니다.
Note
전체 PoolMon 표시를 보려면 명령 프롬프트 창 크기가 너비가 80자 이상(너비=80)이고 행이 53개 이상이어야 합니다(높이=53). 명령 프롬프트 창 버퍼는 너비가 500자 이상(width=500)이고 행이 2000개 이상이어야 합니다(높이=2000). 그렇지 않으면 디스플레이가 잘려질 수 있습니다.
다음 표에서는 PoolMon 디스플레이의 열에 대해 설명합니다.
| Column Name | Description |
|---|---|
| Tag | 풀 할당에 할당된 4 바이트 태그입니다. |
| Type | 메모리 할당이 페이징된 바이트인지 아니면 페이징되지 않은 바이트인지 여부입니다. |
| Allocs | 할당 수입니다. |
| ( ) | 마지막 업데이트 이후의 할당 수 변경입니다. |
| Frees | 무료 작업 수입니다. |
| ( ) | 마지막 업데이트 이후의 할당 수 변경입니다. |
| Diff | 할당 수에서 무료 작업 수를 뺀 값입니다. |
| Bytes | 사용된 할당 크기(바이트)입니다. |
| ( ) | 마지막 업데이트 이후의 할당 크기 변경입니다. |
| Per Alloc | 바이트 값을 Diff 값으로 나눈 값입니다. |
| Mapped_Driver | The local drivers other commonly used drivers and system components (/g) that assign the pool tag value. This column appears only when you use the /g parameter. |
다음 샘플 PoolMon 출력은 할당 수별로 정렬됩니다. (To sort your display this way, start PoolMon with the /a parameter.)
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
Update Rate
PoolMon은 5초마다 디스플레이를 업데이트합니다. 프로그래밍 방식으로 업데이트 속도를 변경할 수 없습니다. 그러나 PoolMon이 실행 중인 창에 포커스가 있는 경우 일부 키를 클릭하여 PoolMon 결과를 강제로 새로 고칠 수 있습니다. CTRL and ALT, for instance, force a refresh; however, Print screen does not.
Accumulated Values
풀 태그 지정을 사용할 때마다 PoolMon이 표시하는 데이터는 Windows에서 수집 및 계산됩니다. 할당, 사용 가능한 작업 및 사용된 바이트 값은 Windows가 시작될 때부터 누적되며 Windows가 다시 시작될 때까지 단조로 증가합니다. Windows가 이미 시작된 후 드라이버 또는 구성 요소가 시작된 경우 드라이버 또는 구성 요소가 마지막으로 시작된 시점부터 값이 누적되고 드라이버 또는 시스템을 다시 시작할 때만 다시 설정됩니다.
태그 값 해석
모든 풀 메모리 할당에는 태그가 있지만 모두 특성 태그 값이 있는 것은 아닙니다. Pool memory allocations have characteristic tag values when the driver that allocates the memory sets the tag value by using ExAllocatePoolWithTag or ExAllocatePoolWithQuotaTag. If the driver does not assign a tag value (ExAllocatePool, ExAllocatePoolWithQuota), Windows still creates a tag, but it assigns the default tag value None. 따라서 해당 드라이버의 할당에 대한 통계를 다른 풀 할당의 통계와 구분할 수 없습니다.