社区
Linux/Unix社区
帖子详情
linux怎么看某个进程有没有内存泄露啊?
david19800108
2011-01-10 12:14:05
我用ps -F -p 进程号 持续查看进程情况,数小时。
输出两个列中SZ好像一直保持不变,但是RSS列的值一直增大,这个说明程序有内存泄露吗?
...全文
1893
4
打赏
收藏
linux怎么看某个进程有没有内存泄露啊?
我用ps -F -p 进程号 持续查看进程情况,数小时。 输出两个列中SZ好像一直保持不变,但是RSS列的值一直增大,这个说明程序有内存泄露吗?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
mochencui
2011-01-14
打赏
举报
回复
试试 valgrind ./a.out
这个 valgrind 是系统自带的命令
valgrind
Valgrind是一款用于内存调试、内存泄漏检测以及性能分析的软件开发工具。Valgrind这个名字取自北欧神话中英灵殿的入口。
Valgrind的最初作者是Julian Seward,他于2006年由于在开发Valgrind上的工作获得了第二届Google-O'Reilly开源代码奖。
Valgrind遵守GNU通用公共许可证条款,是一款自由软件。
到3.3.0版本为止,Valgrind支持x86、x86-64以及PowerPC上的Linux。除此之外,还有一些其它非正式支持的类Unix平台(如FreeBSD、NetBSD以及Mac OS X)。
请叫我车车
2011-01-13
打赏
举报
回复
试试 valgrind ./a.out
这个 valgrind 是系统自带的命令
valgrind
Valgrind是一款用于内存调试、内存泄漏检测以及性能分析的软件开发工具。Valgrind这个名字取自北欧神话中英灵殿的入口。
Valgrind的最初作者是Julian Seward,他于2006年由于在开发Valgrind上的工作获得了第二届Google-O'Reilly开源代码奖。
Valgrind遵守GNU通用公共许可证条款,是一款自由软件。
到3.3.0版本为止,Valgrind支持x86、x86-64以及PowerPC上的Linux。除此之外,还有一些其它非正式支持的类Unix平台(如FreeBSD、NetBSD以及Mac OS X)。
李亚超
2011-01-10
打赏
举报
回复
不一定,有些程序在运行时要动态申请和释放内存
wangtingguang
2011-01-10
打赏
举报
回复
可以通过/proc/进程号/status 中的VmSize查看内存的变化,还有free命令
可以写个定时任务,定时将status保存到某个文件中,运行一段时间。
PID=`ps -ef |grep 程序名 |sed -n '2p' |awk '{print $2}'`
free >> $DIR/memory.log
echo "-----/proc/$PID/status-------">>$DIR/memory.log
定时任务可以在crontab中设置每分钟统计一次。
linux
内存管理 (三)
进程
的内存消耗- 内存泄漏
进程
的内存消耗和泄漏 ●
进程
的VMA。 ●
进程
内存消耗的4个概念:vss、rss、pss和uss ● page fault的几种可能性,major和minor ● 应用内存泄漏的界定方法 ● 应用内存泄漏的检测方法:valgrind和addresssanitizer 1、
进程
的内存消耗 当我们谈到
进程
消耗的内存,这时候只看 user space 的,是不看内核空间的内存的。 32位的处理器下,每个
进程
都有一个0-3G的用户空间,但是它们的内核空间是共享的,只有一个。一...
进程
的哪些内存类型容易引起内存泄漏?
相信你在平时的工作中,应该遇到过下面这些场景:伴随着服务器中的后台任务持续地运行,系统中可用内存越来越少;应用程序正在运行时忽然被 OOM kill 掉了;
进程
看起来没有消耗多少内存,但是系统内存就是不够用了;……类似问题,很可能就是内存泄漏导致的。我们都知道,内存泄漏指的是内存被分配出去后一直没有被释放,导致这部分内存无法被再次使用,我们平时遇到的内存泄漏可能是应用程序的内存泄漏,也可能是内核(操作系统)的内存泄漏;
Linux
内核:
进程
管理——
进程
内存泄漏诊断
14、用excel打开后,选择时间和其中一列的数据,插入二维折线图。这时性能监视器会弹出“输入该数据收集器的用户”,将用户名改为admin,并输入你的电脑的登录密码即可。1、打开计算机管理--系统工具--性能--数据收集器集--用户定义。10、 在刚才创建完成的“数据收集器集”的项里,右键--属性。11、将日志格式改为“制表符分隔” ,间隔时间为“10秒”。在“选定对象的实例”里,添加自己要进行测试的程序服务。2、选用户定义,右键--新建--数据收集器集。3、创建新的数据收集器集,选“手动创建”。
【
Linux
】python
进程
内存泄漏分析
python程序在重复执行同一个任务,一段时间后,通过top命令可以看到
进程
的“RES”内存在不断增长,由此可以判断发生了内存泄漏。 在
Linux
环境中,可以通过以下操作进行内存泄漏分析: (top命令中,使用 shift + f 可以选择排序列) # 1、(process status)打印每个用户
进程
状态,树状 ps auxf #2、(list open files)列出当前
进程
打开的文件 lsof -p {pid} #3、(strace)跟踪系统调用,
进程
执行到哪一步 strace -p {pid
Linux
下查看某一
进程
所占用内存的方法
Linux
下查看某一个
进程
所占用的内存,首先可以通过ps命令找到
进程
id,比如 ps -ef | grep kafka 可以看到kafka这个程序的
进程
id。第一个标注的地方是CPU和内存占用率,后面的943100是物理内存使用量,单位是k,此时kafka大约占用943M内存。通过: ps aux | sort -k4,4nr | head -n 10 查看内存占用前10名的程序。这样可以动态实时的看到CPU和内存的占用率,然后按q键回到命令行。另外还可以通过 top 命令动态查看内存占用。...
Linux/Unix社区
23,209
社区成员
74,537
社区内容
发帖
与我相关
我的任务
Linux/Unix社区
Linux/Unix社区 应用程序开发区
复制链接
扫一扫
分享
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章