免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3003 | 回复: 4
打印 上一主题 下一主题

[学习分享] 如何检测一个进程的内存、cpu使用情况 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-08-14 15:28 |只看该作者 |倒序浏览
小弟初学linux,这里遇到这么一个问题苦思良久未找到合适方法解答,望各位大侠指教:
现在假设有这么一个进程知道它的pid 12345,但是在这个进程中又fork出来多个子进程,如何来计算这个进程的cpu、内存使用情况?
在计算的时候是否要加入它的子进程?子进程如何获取?/proc/12345/meminfo中记载的内存使用情况是否包含它的子进程的内存占用?

论坛徽章:
15
CU大牛徽章
日期:2013-03-13 15:32:35白羊座
日期:2013-10-30 13:11:16未羊
日期:2013-11-29 10:47:02白羊座
日期:2014-01-22 11:34:25白羊座
日期:2014-03-04 11:05:50申猴
日期:2014-07-29 16:31:36天秤座
日期:2013-10-23 15:33:47未羊
日期:2013-10-09 09:18:53CU大牛徽章
日期:2013-03-13 15:38:15CU大牛徽章
日期:2013-03-13 15:38:52CU大牛徽章
日期:2013-03-14 14:08:55未羊
日期:2013-09-23 09:29:22
2 [报告]
发表于 2012-08-14 17:43 |只看该作者
你用的是什么linux?我用的是redhat as5,/proc/pid下面没有meminfo文件。
/proc/pid/meminfo应该不包含子进程的memory。
所有的进程都是pid=1的init进程衍生出来的,如果包含的话,init用的memory等于整个系统使用的memory了。
个人理解,欢迎拍砖!

论坛徽章:
0
3 [报告]
发表于 2012-09-20 06:52 |只看该作者
我用的是ubuntu11.10,我感觉也是不包含的,但是不知道有什么好的办法可以监控到一个fork出多个子进程的作业的资源使用情况!回复 2# yzkarchive


   

论坛徽章:
277
CU大牛徽章
日期:2013-04-17 10:59:39CU大牛徽章
日期:2013-04-17 11:01:45CU大牛徽章
日期:2013-04-17 11:02:15CU大牛徽章
日期:2013-04-17 11:02:36CU大牛徽章
日期:2013-04-17 11:02:58CU大牛徽章
日期:2013-05-20 10:44:54CU大牛徽章
日期:2013-05-20 10:45:13CU大牛徽章
日期:2013-05-20 10:45:24CU大牛徽章
日期:2013-05-20 10:45:31金牛座
日期:2013-09-06 22:11:28巨蟹座
日期:2013-09-06 23:01:04射手座
日期:2013-09-06 23:01:45
4 [报告]
发表于 2012-09-20 11:06 |只看该作者
没啥好办法吧        

论坛徽章:
0
5 [报告]
发表于 2012-12-25 10:54 |只看该作者
这个问题已经解决,解决的方案就是递归的调用shell命令:ps h --ppid (12345) -o pid就可以得到12345的所有子进程的id回复 4# yuanzh78


   
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP