如何找到"进程占用的大小/内存空间"

时间:2014-05-08 06:00:15

标签: c++ c linux

我被要求编写一个c / cpp程序来查找面试中任何过程的大小。任何人都可以告诉我这是如何实现的?

.-在将que标记为重复之前 - 请仔细阅读:我已经询问如何通过 c / cpp程序查找,而不仅仅是使用任何unix / linux shell命令

3 个答案:

答案 0 :(得分:2)

您可以使用getrusage。但请记住,它并未在所有系统上实施。

或者阅读/proc/[pid]/statm

否则,请尝试these之一(命令行选项)。

答案 1 :(得分:1)

它不属于标准C ++,因此取决于操作系统。

在linux上,例如通过访问/proc filesystem

来完成

另一种选择当然是只调用ps之类的系统命令并解析其输出(这就是我在Python脚本中所做的事情)。

能够解释你能得到的数字是另一个非常重要的问题。

答案 2 :(得分:0)

使用

size <executable> 

输出

   text    data     bss     dec     hex filename
1361623    1984    2708 1366315  14d92b <executable>

显示文字,数据,bss和总大小