日期:2014-05-16  浏览次数:20663 次

linux下用什么查看程序占用的内存空间啊?
发现在freebsd中的time命令,对于程序的执行有很详细的解释:
0.009u 0.019s 0:00.02 50.0% 12+1852k 0+0io 0pf+0w
连cpu使用率,内存占用量和io次数都有记载……

但是linux(fedora)下好像就不行了,time命令就只能显示时间:(HelloWorld)
real 0m0.001s
user 0m0.001s
sys 0m0.001s
另外顺便问一下linux除了time命令以外,还有一个times命令,这个命令是什么意思?manpage里并没有说明格式。还有为什么同样执行一个helloworld数值完全不一样?:(HelloWorld)
0m0.022s 0m0.044s
0m1.186s 0m0.242s

重点问题:linux中有没有像freebsd的time命令一样,既能显示时间又能显示内存使用量的命令,或者说不显示时间,专门显示内存使用量的命令?
别告诉我ps或者top神马的,网上全是这种答案,瞬间执行完毕的程序,也能用ps去看嘛?可能是我孤陋寡闻了……

------解决方案--------------------
/proc/$PID目录下能获取到你说的这些东西,该目录下文件有不少,要一一详细了解请google

如果是瞬间执行完毕的东西对系统性能又没一点影响,不知道为什么你还需要了解这么详细呢。
------解决方案--------------------
top -p PID 能实时查看进程信息
------解决方案--------------------
楼主在一楼用的time是Bash内建的,`which time` sleep 1。
一般是/usr/bin/time。
------解决方案--------------------
探讨

自己解决了,看来只能0分结帖了……
linux的time命令真的是一个无比强大的调试工具,配合gdb使用就是神一样的存在……
比如,time统计的驻留集空间,可以作为是否内存泄漏的一个重要参考,gdb似乎就不太容易办到这一点……
具体的解决细节比较多,就不在这里说了,有兴趣的朋友可以单独问我……

下面是自己测试的一个快排的部分统计数据,time命令可以监测很多的统计数据,从运行时间到……

------解决方案--------------------
我是蹭分的~~~

------解决方案--------------------
可惜来晚了一步啊