heap 子命令
heap 子命令显示有关堆的信息。
格式
参数
| 项 | 描述 |
|---|---|
| -l | 显示有关堆的信息,包括完整的可用页列表,延迟的可用页列表 (仅支持 MODS) 以及分配的页。 |
| -f | 仅显示自由页列表。 |
| -d | 仅显示延迟的自由页列表。 |
| -a | 仅显示已分配的页面。 |
| <地址> | 指定该堆的有效地址。 请使用符号,十六进制值或十六进制表达式来指定地址。 |
| <SRAD 编号> | 指定要显示的堆应该是对应于给定系统资源分配域 (SRAD) 的缺省内核堆。 |
其他
hp
示例
以下是如何使用 heap 子命令的示例:
KDB(0)> heap
Pinned heap 02DACFA8
sanity......... 4E554D41 alt............ 00000001
heapaddr[00]... F1000C0000000000 [01].. 0
heapaddr[02]... 0 [03].. 0
heapaddr[04]... 0 [05].. 0
heapaddr[06]... 0 [07].. 0
heapaddr[08]... 0 [09].. 0
heapaddr[10]... 0 [11].. 0
heapaddr[12]... 0 [13].. 0
heapaddr[14]... 0 [15].. 0
baseaddr[00]... F1000C000FF0A000 [01].. 0
baseaddr[02]... 0 [03].. 0
baseaddr[04]... 0 [05].. 0
baseaddr[06]... 0 [07].. 0
baseaddr[08]... 0 [09].. 0
baseaddr[10]... 0 [11].. 0
baseaddr[12]... 0 [13].. 0
baseaddr[14]... 0 [15].. 0
numpds[00]..... FF00F6 [01].. 0
numpds[02]..... 0 [03].. 0
numpds[04]..... 0 [05].. 0
numpds[06]..... 0 [07].. 0
numpds[08]..... 0 [09].. 0
numpds[10]..... 0 [11].. 0
numpds[12]..... 0 [13].. 0
numpds[14]..... 0 [15].. 0
l2pd_size[00].. C [01].. 0
l2pd_size[02].. 0 [03].. 0
l2pd_size[04].. 0 [05].. 0
l2pd_size[06].. 0 [07].. 0
l2pd_size[08].. 0 [09].. 0
l2pd_size[10].. 0 [11].. 0
l2pd_size[12].. 0 [13].. 0
l2pd_size[14].. 0 [15].. 0
Kernel heap 02DAD150
sanity......... 4E554D41 alt............ 00000000
heapaddr[00]... F1000C0000000110 [01].. 0
heapaddr[02]... 0 [03].. 0
heapaddr[04]... 0 [05].. 0
heapaddr[06]... 0 [07].. 0
heapaddr[08]... 0 [09].. 0
heapaddr[10]... 0 [11].. 0
heapaddr[12]... 0 [13].. 0
heapaddr[14]... 0 [15].. 0
baseaddr[00]... F1000C000FF0A000 [01].. 0
baseaddr[02]... 0 [03].. 0
baseaddr[04]... 0 [05].. 0
baseaddr[06]... 0 [07].. 0
baseaddr[08]... 0 [09].. 0
baseaddr[10]... 0 [11].. 0
baseaddr[12]... 0 [13].. 0
baseaddr[14]... 0 [15].. 0
numpds[00]..... FF00F6 [01].. 0
numpds[02]..... 0 [03].. 0
numpds[04]..... 0 [05].. 0
numpds[06]..... 0 [07].. 0
numpds[08]..... 0 [09].. 0
numpds[10]..... 0 [11].. 0
numpds[12]..... 0 [13].. 0
numpds[14]..... 0 [15].. 0
l2pd_size[00].. C [01].. 0
l2pd_size[02].. 0 [03].. 0
l2pd_size[04].. 0 [05].. 0
l2pd_size[06].. 0 [07].. 0
l2pd_size[08].. 0 [09].. 0
l2pd_size[10].. 0 [11].. 0
l2pd_size[12].. 0 [13].. 0
l2pd_size[14].. 0 [15].. 0
KDB(0)> heap 0
Heap for node #00
Heap F1000C0000000110
sanity......... 48454150 base... 000000000FF09EF0
lock@.. F1000C0000000120 lock... 0000000000000000
alt............ 00000000 numpds......... 00FF00F6
amount. 000000000B106FF0 pinflag........ 00000000
vmrelflag...... 00000000 newheap........ 00000000
protect........ 00000000 limit.......... 00000000
heap64......... 00000000 rhash.. 0000000002E56048
pagtot......... 0001223C pagused........ 0000AFAA
frtot[00].. 00000000 [01].. 00000000 [02].. 00000000 [03].. 00000000
frtot[04].. 000005B9 [05].. 00000A84 [06].. 000005ED [07].. 00001F93
frtot[08].. 000001F8 [09].. 00000016 [10].. 0000007D [11].. 0000000E
frused[00]. 00000000 [01].. 00000000 [02].. 00000000 [03].. 00000000
frused[04]. 00000001 [05].. 00000005 [06].. 0000002B [07].. 00001579
frused[08]. 00000014 [09].. 00000002 [10].. 0000000C [11].. 0000000A
fr[00]..... 00FFFFFF [01].. 00FFFFFF [02].. 00FFFFFF [03].. 00FFFFFF
fr[04]..... 00014E09 [05].. 000158B0 [06].. 00015648 [07].. 000140A0
fr[08]..... 000154A8 [09].. 0000F198 [10].. 000155D8 [11].. 00FFFFFF
Heap: per-cpu free lists
Heap F1000C0000000000
sanity......... 48454150 base... 000000000FF0A000
lock@.. F1000C0000000010 lock... 0000000000000000
alt............ 00000001 numpds......... 00FF00F6
amount. 000000000202EB70 pinflag........ 00000001
vmrelflag...... 00000000 newheap........ 00000000
protect........ 00000000 limit.......... 00000000
heap64......... 00000000 rhash.. 0000000002E56048
pagtot......... 000024CC pagused........ 00001068
frtot[00].. 00000000 [01].. 00000000 [02].. 00000000 [03].. 00000000
frtot[04].. 0000000B [05].. 00000617 [06].. 0000C087 [07].. 00008A5F
frtot[08].. 00000438 [09].. 000001E4 [10].. 0000203A [11].. 000000A3
frused[00]. 00000000 [01].. 00000000 [02].. 00000000 [03].. 00000000
frused[04]. 0000000B [05].. 000005F8 [06].. 00000073 [07].. 000001E0
frused[08]. 000000A3 [09].. 00000026 [10].. 000000D8 [11].. 00000012
fr[00]..... 00FFFFFF [01].. 00FFFFFF [02].. 00FFFFFF [03].. 00FFFFFF
fr[04]..... 000000E0 [05].. 0000F1BB [06].. 000158C6 [07].. 000158B6
fr[08]..... 00015242 [09].. 0000F216 [10].. 000158BF [11].. 0000F3D3
Heap: per-cpu free lists
addr...... F1000C000FF0A000 overflow.......... 00000000
ov_min.... 0000000000000000 ov_max.... 0000000000000000
maxpds............ 00FF00F6 peakpd............ 00000000
l2pg_size......... 0000000C l2pd_size......... 0000000C
limit_callout..... 00000000 newseg_callout.... 00000000
pagesoffset....... 00008BA0 pages_srval....... 00000000
lockoffset........ 00000400 locks_srval....... 00000000
heap_locks...... @ F1000C0000000400 pages........... @ F1000C0000008BA0
heap_lists...... @ F1000C0000000A80
Heap anchor
... F1000C0000008B90 pageno FFFFFFFF type.. 00 allocpage offset... 0158C9
The largest free range in the heap is 16623661 pages and starts
at page 158C9.
KDB(0)> heap -l 0
Heap for node #00
Heap F1000C0000000110
sanity......... 48454150 base... 000000000FF09EF0
lock@.. F1000C0000000120 lock... 0000000000000000
alt............ 00000000 numpds......... 00FF00F6
amount. 000000000B106FF0 pinflag........ 00000000
vmrelflag...... 00000000 newheap........ 00000000
protect........ 00000000 limit.......... 00000000
heap64......... 00000000 rhash.. 0000000002E56048
pagtot......... 0001223C pagused........ 0000AFAA
frtot[00].. 00000000 [01].. 00000000 [02].. 00000000 [03].. 00000000
frtot[04].. 000005B9 [05].. 00000A84 [06].. 000005ED [07].. 00001F93
frtot[08].. 000001F8 [09].. 00000016 [10].. 0000007D [11].. 0000000E
frused[00]. 00000000 [01].. 00000000 [02].. 00000000 [03].. 00000000
frused[04]. 00000001 [05].. 00000005 [06].. 0000002B [07].. 00001579
frused[08]. 00000014 [09].. 00000002 [10].. 0000000C [11].. 0000000A
fr[00]..... 00FFFFFF [01].. 00FFFFFF [02].. 00FFFFFF [03].. 00FFFFFF
fr[04]..... 00014E09 [05].. 000158B0 [06].. 00015648 [07].. 000140A0
fr[08]..... 000154A8 [09].. 0000F198 [10].. 000155D8 [11].. 00FFFFFF
Heap: per-cpu free lists
Heap F1000C0000000000
sanity......... 48454150 base... 000000000FF0A000
lock@.. F1000C0000000010 lock... 0000000000000000
alt............ 00000001 numpds......... 00FF00F6
amount. 000000000202EB70 pinflag........ 00000001
vmrelflag...... 00000000 newheap........ 00000000
protect........ 00000000 limit.......... 00000000
heap64......... 00000000 rhash.. 0000000002E56048
pagtot......... 000024CC pagused........ 00001068
frtot[00].. 00000000 [01].. 00000000 [02].. 00000000 [03].. 00000000
frtot[04].. 0000000B [05].. 00000617 [06].. 0000C087 [07].. 00008A5F
frtot[08].. 00000438 [09].. 000001E4 [10].. 0000203A [11].. 000000A3
frused[00]. 00000000 [01].. 00000000 [02].. 00000000 [03].. 00000000
frused[04]. 0000000B [05].. 000005F8 [06].. 00000073 [07].. 000001E0
frused[08]. 000000A3 [09].. 00000026 [10].. 000000D8 [11].. 00000012
fr[00]..... 00FFFFFF [01].. 00FFFFFF [02].. 00FFFFFF [03].. 00FFFFFF
fr[04]..... 000000E0 [05].. 0000F1BB [06].. 000158C6 [07].. 000158B6
fr[08]..... 00015242 [09].. 0000F216 [10].. 000158BF [11].. 0000F3D3
Heap: per-cpu free lists
addr...... F1000C000FF0A000 overflow.......... 00000000
ov_min.... 0000000000000000 ov_max.... 0000000000000000
maxpds............ 00FF00F6 peakpd............ 00000000
l2pg_size......... 0000000C l2pd_size......... 0000000C
limit_callout..... 00000000 newseg_callout.... 00000000
pagesoffset....... 00008BA0 pages_srval....... 00000000
lockoffset........ 00000400 locks_srval....... 00000000
heap_locks...... @ F1000C0000000400 pages........... @ F1000C0000008BA0
heap_lists...... @ F1000C0000000A80
Heap anchor
... F1000C0000008B90 pageno FFFFFFFF type.. 00 allocpage offset... 0158C9
Heap Free list
... F1000C0000161830 pageno 000158C9 type.. 03 freerange offset... NO_PAGE
... F1000C0000161840 pageno 000158CA type.. 04 freesize size..... FDA82D
... F1000C000FF09AF0 pageno 00FF00F5 type.. 05 freerangeend offset... 0158C9
Heap deferred free anchor
... F1000C0000008B80 pageno FFFFFFFE type.. 00 allocpage offset... 0158C7
Heap Deferred Free list
... F1000C0000161810 pageno 000158C7 type.. 01 allocrange offset... 0158C0
... F1000C0000161820 pageno 000158C8 type.. 06 allocsize size..... 000002
... F1000C00001617A0 pageno 000158C0 type.. 01 allocrange offset... 0158B7
...
Heap Alloc list
... F1000C0000008BA0 pageno 00000000 type.. 00 allocpage offset... NO_PAGE
... F1000C0000008BB0 pageno 00000001 type.. 00 allocpage offset... NO_PAGE
... F1000C0000008BC0 pageno 00000002 type.. 00 allocpage offset... NO_PAGE
...
KDB(0)> heap -f 0
Heap for node #00
Heap F1000C0000000110
Heap: per-cpu free lists
Heap F1000C0000000000
Heap: per-cpu free lists
addr...... F1000C000FF0A000 overflow.......... 00000000
ov_min.... 0000000000000000 ov_max.... 0000000000000000
maxpds............ 00FF00F6 peakpd............ 00000000
l2pg_size......... 0000000C l2pd_size......... 0000000C
limit_callout..... 00000000 newseg_callout.... 00000000
pagesoffset....... 00008BA0 pages_srval....... 00000000
lockoffset........ 00000400 locks_srval....... 00000000
heap_locks...... @ F1000C0000000400 pages........... @ F1000C0000008BA0
heap_lists...... @ F1000C0000000A80
Heap anchor
... F1000C0000008B90 pageno FFFFFFFF type.. 00 allocpage offset... 0158C9
Heap Free list
... F1000C0000161830 pageno 000158C9 type.. 03 freerange offset... NO_PAGE
... F1000C0000161840 pageno 000158CA type.. 04 freesize size..... FDA82D
... F1000C000FF09AF0 pageno 00FF00F5 type.. 05 freerangeend offset... 0158C9
KDB(0)> heap -d 0
Heap for node #00
Heap F1000C0000000110
Heap: per-cpu free lists
Heap F1000C0000000000
Heap: per-cpu free lists
addr...... F1000C000FF0A000 overflow.......... 00000000
ov_min.... 0000000000000000 ov_max.... 0000000000000000
maxpds............ 00FF00F6 peakpd............ 00000000
l2pg_size......... 0000000C l2pd_size......... 0000000C
limit_callout..... 00000000 newseg_callout.... 00000000
pagesoffset....... 00008BA0 pages_srval....... 00000000
lockoffset........ 00000400 locks_srval....... 00000000
heap_locks...... @ F1000C0000000400 pages........... @ F1000C0000008BA0
heap_lists...... @ F1000C0000000A80
Heap anchor
... F1000C0000008B90 pageno FFFFFFFF type.. 00 allocpage offset... 0158C9
The largest free range in the heap is 16623661 pages and starts
at page 158C9.
Heap deferred free anchor
... F1000C0000008B80 pageno FFFFFFFE type.. 00 allocpage offset... 0158C7
Heap Deferred Free list
... F1000C0000161810 pageno 000158C7 type.. 01 allocrange offset... 0158C0
... F1000C0000161820 pageno 000158C8 type.. 06 allocsize size..... 000002
... F1000C00001617A0 pageno 000158C0 type.. 01 allocrange offset... 0158B7
...
KDB(0)> heap -d 0
Heap for node #00
Heap F1000C0000000110
Heap: per-cpu free lists
Heap F1000C0000000000
Heap: per-cpu free lists
addr...... F1000C000FF0A000 overflow.......... 00000000
ov_min.... 0000000000000000 ov_max.... 0000000000000000
maxpds............ 00FF00F6 peakpd............ 00000000
l2pg_size......... 0000000C l2pd_size......... 0000000C
limit_callout..... 00000000 newseg_callout.... 00000000
pagesoffset....... 00008BA0 pages_srval....... 00000000
lockoffset........ 00000400 locks_srval....... 00000000
heap_locks...... @ F1000C0000000400 pages........... @ F1000C0000008BA0
heap_lists...... @ F1000C0000000A80
Heap anchor
... F1000C0000008B90 pageno FFFFFFFF type.. 00 allocpage offset... 0158C9
The largest free range in the heap is 16623661 pages and starts
at page 158C9.
Heap Alloc list
... F1000C0000008BA0 pageno 00000000 type.. 00 allocpage offset... NO_PAGE
... F1000C0000008BB0 pageno 00000001 type.. 00 allocpage offset... NO_PAGE
... F1000C0000008BC0 pageno 00000002 type.. 00 allocpage offset... NO_PAGE
...
KDB(0)> heap @kernel_heap0
Heap 03AF80E0
sanity......... 48454150 base... 0000000000039F20
lock@.. 0000000003AF80F0 lock... 0000000000000000
alt............ 00000000 numpages....... 0000C4CE
amount. 00000000005E66C0 pinflag........ 00000000
vmrelflag...... 00000000 newheap........ 00000000
protect........ 00000000 limit.......... 00000000
heap64......... 00000000 rhash.. 0000000000000000
pagtot......... 00000000 pagused........ 00000000
...