Linux 进程资源:修订间差异
跳到导航
跳到搜索
(→pmap) |
(→pmap) |
||
第82行: | 第82行: | ||
|[anon] | |[anon] | ||
|} | |} | ||
一般情况下,除 anon 外,其他线程的内存开始地址等相对固定。可以用 diff 比较两次内存映射的差异。 | |||
[[分类:Develop]] | [[分类:Develop]] | ||
[[分类:Linux]] | [[分类:Linux]] |
2024年9月2日 (一) 11:19的最新版本
pmap
pmap(Process Map) 命令能够显示一个或多个进程的内存映射情况,在 procps-ng 包中。包括分配的地址空间的大小、权限、偏移量、设备和映射到的文件,是理解和分析 Linux 进程内存使用的重要工具。
pmap -x <PID>
- Address: 内存开始地址
- Kbytes: 占用内存的字节数(KB)
- RSS: 保留内存的字节数(KB),实际驻留在 RAM 的内存大小(包括未均摊的共享库大小,不包括已经交换出去的页面)
- Dirty: 脏页的字节数(包括共享和私有的)(KB)
- Mode: 内存的权限:read、write、execute、shared、private (写时复制)
- Mapping: 占用内存的文件、或[anon](分配的内存)、或[stack](堆栈)
Address | Kbytes | RSS | Dirty | Mode | Mapping |
00005650add80000 | 16 | 16 | 0 | r---- | svr |
00007ffd48a0a000 | 132 | 12 | 12 | rw--- | [stack] |
00007f27b7982000 | 4 | 4 | 0 | r---- | ld-2.31.so |
00007f27b76b4000 | 8 | 8 | 8 | rw--- | libc-2.31.so |
00007f27b76dd000 | 12 | 12 | 0 | r---- | libgcc_s.so.1 |
00007f27b74c7000 | 4 | 4 | 4 | rw--- | libm-2.31.so |
00007f27b76ba000 | 24 | 24 | 0 | r---- | libpthread-2.31.so |
00007f27b7969000 | 12 | 12 | 12 | rw--- | libstdc++.so.6.0.32 |
ffffffffff600000 | 4 | 0 | 0 | --x-- | [anon] |
一般情况下,除 anon 外,其他线程的内存开始地址等相对固定。可以用 diff 比较两次内存映射的差异。