[转帖]Linux命令pmap
Linux命令pmap
https://www.cnblogs.com/lnlvinso/p/5272771.html
jmap可以查看Java程序的堆内存使用情况,pmap可以查看Linux上运行的进程的内存使用情况。
查看Linux上运行的进程的内存使用情况,可以使用jmap,top,ps命令。
top命令本身也比较的耗资源,系统负载较大时不建议使用。
ps命令的使用,可以如下:
ps -aux | grep init
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1 0.0 0.0 1584 536 ? S s 10:43 0:00 init [3]
其中RSS 就是这个process 实际占用的物理内存,VSZ 就是process 的虚拟内存,就是process 现在没有使用但未来可能会分配的内存大小。
ps 出来的结果,是有点不正确的,如果把所有程序的 RSS 加起来,恐怕比你的实际内存还要大呢。为什么呢??因为 ps 的结果,RSS 那部分,是包括共享内存的。
linux 会把一些shared libraries 载入到内存中,在pmap 的输出中,这些shared libraries 的名字通常是 lib*.so 。如 libX11.so.6.2.0 。这个 libX11.so.6.2.0 会被很多process load 到自己的运行环境中,同时,ps 输出的RSS 结果中,每个process 都包含了这个libX11.so.6.2.0 ,而事实上它只被load 了一次,如果单纯把ps 的结果相加,这样就重复计算了。
使用pmap可以看到进程实际使用的内存。

$ pmap -d 1980 1980: /usr/bin/yakuake Address Kbytes Mode Offset Device Mapping 00110000 2524 r-x-- 0000000000000000 008:00002 libkio.so.5.3.0 00387000 4 ----- 0000000000277000 008:00002 libkio.so.5.3.0 00388000 32 r---- 0000000000277000 008:00002 libkio.so.5.3.0 00390000 16 rw--- 000000000027f000 008:00002 libkio.so.5.3.0 00394000 444 r-x-- 0000000000000000 008:00002 libQtDBus.so.4.5.2 00403000 4 ----- 000000000006f000 008:00002 libQtDBus.so.4.5.2 00404000 4 r---- 000000000006f000 008:00002 libQtDBus.so.4.5.2 00405000 4 rw--- 0000000000070000 008:00002 libQtDBus.so.4.5.2 00407000 228 r-x-- 0000000000000000 008:00002 libkparts.so.4.3.0 00440000 8 r---- 0000000000039000 008:00002 libkparts.so.4.3.0 00442000 4 rw--- 000000000003b000 008:00002 libkparts.so.4.3.0 00443000 3552 r-x-- 0000000000000000 008:00002 libkdeui.so.5.3.0 007bb000 76 r---- 0000000000377000 008:00002 libkdeui.so.5.3.0 007ce000 24 rw--- 000000000038a000 008:00002 libkdeui.so.5.3.0 007d4000 4 rw--- 0000000000000000 000:00000 [ anon ] .... mapped: 180472K writeable/private: 19208K shared: 20544K

mapped的结果和ps命令中的VSZ 是一样的,writeable/private是进程实际使用的内存大小,shared 是该进程和其他进程共享的内存大小。
pmap -x命令的结果和pmap -d命令中的mapped是一样的。
pmap监测Java程序时,得到的是JVM所分配的内存大小,分析已经使用的内存情况就需要使用jmap来完成了。
[转帖]Linux命令pmap的更多相关文章
- [转帖]Linux性能测试 pmap命令
Linux性能测试 pmap命令 https://www.cnblogs.com/txw1958/archive/2012/07/26/linux-pmap.html 名称: pmap - ...
- [转帖]Linux命令中特殊符号
Linux命令中特殊符号 转自:http://blog.chinaunix.net/uid-16946891-id-5088144.html 在shell中常用的特殊符号罗列如下:# ; ;; . ...
- [转帖]linux命令dd
linux命令dd dd 是diskdump 的含义 之前学习过 总是记不住 用的还是少. http://embeddedlinux.org.cn/emb-linux/entry-level/20 ...
- Linux命令pmap
jmap可以查看Java程序的堆内存使用情况,pmap可以查看Linux上运行的进程的内存使用情况. 查看Linux上运行的进程的内存使用情况,可以使用jmap,top,ps命令. top命令本身也比 ...
- 【转】linux之pmap命令!
原贴:http://tonykorn97.itpub.net/post/6414/249221 linux之pmap命令! ====================================== ...
- [转帖]50个必知的Linux命令技巧,你都掌握了吗?
50个必知的Linux命令技巧,你都掌握了吗? https://blog.51cto.com/lizhenliang/2131141 https://blog.51cto.com/lizhenlian ...
- 【转帖】Linux命令行操作json神器jq
Linux命令行操作json神器jq https://www.cnblogs.com/chenqionghe/p/11736942.html jq类似一个awk或grep一样的神器,可以方便地在命令行 ...
- [转帖]linux常用命令大全(linux基础命令入门到精通+实例讲解+持续更新+命令备忘录+面试复习)
linux常用命令大全(linux基础命令入门到精通+实例讲解+持续更新+命令备忘录+面试复习) https://www.cnblogs.com/caozy/p/9261224.html 总结的挺好的 ...
- Linux 命令快捷键
Linux 命令快捷键 tab 自动补齐(有不知道的吗)Ctrl+u 删除(剪切)此处至开始所有内容 Ctrl+k 删除从光标所在位置到行末 快速命令行 – 快捷方式• history 搜索历史执行过 ...
随机推荐
- linux系列(二十一):chmod命令
1.命令格式 chmod [-cfvR] [--help] [--version] mode file 2.命令功能 用于改变文件或目录的访问权限,用它控制文件或目录的访问权限. 3.命令参数 必要参 ...
- 《论文翻译》 GIOU
目录 广义交并比-GIOU(回归检测的一种指标和Loss) 注释 1. 摘要 2. 介绍 3. 相关工作 4. 广义交并比 5. GIOU作为目标检测的LOSS 6. 实验结果 7. 个人理解 单词汇 ...
- Linux 安装软件报错 Sub-process /usr/bin/dpkg returned an error code (1)
Linux 通过 apt-get 安装软件时报错,换一个软件安装也一样. Errors were encountered while processing: blueman E: Sub-proces ...
- Java 面向对象(十一)
常用类之集合 集合:就是用来存放数据的一个容器. 数组和集合的区别 (1)数组能存基本数据类型和引用类型:集合当中只能存放引用数据类型,直接放基本数据类型,也会自动帮你装箱(把基本数据类型转成对象), ...
- qt 关于Qt中MVC的介绍与使用
Qt包含一组使用模型/视图结构的类,可以用来管理数据并呈现给用户.这种体系结构引入的分离使开发人员更灵活地定制项目,并且提供了一个标准模型的接口,以允许广泛范围的数据源被使用到到现有的视图中. 模型 ...
- mysql 实现同一个sql查询 分页数据 和总记录数
$get_sql = "SELECT sql_calc_found_rows field1,field2 FROM table WHERE name = '1' order by add_t ...
- uploadify HTTP 302 错误如何解决?
TP框架uploadify HTTP 302 错误如何解决? 在核心类文件夹里下的Conf/convention.php中 将 VAR_SESSION_ID打开(建议在模块的conf文件中添加配置 ...
- 艺赛旗RPA谷歌浏览器拾取
rpa通过chrome拾取,操作步骤如下 方法一: 1>安装谷歌访问助手 直接下载:谷歌访问助手 官方下载地址:https://github.com/haotian-wang/google-ac ...
- Mercury:唯品会全链路应用监控系统解决方案详解(含PPT)
Mercury:唯品会全链路应用监控系统解决方案详解(含PPT) 原创: 姚捷 高可用架构 2016-08-08
- return EXIT_SUCCESS;
就是 return 0; EXIT_SUCCESS是C语言头文件库中定义的一个符号常量. 头文件stdlib.h中:#include <cstdlib> /* Definition of ...