如何从C / C ++获得virt大小?

时间:2010-11-23 09:44:37

标签: c++ c linux memory-management

是否有一种简单的方法如何从C / C ++代码中获取Linux进程的virt大小?感谢

2 个答案:

答案 0 :(得分:5)

如果您想了解自己流程的虚拟大小,只需阅读/proc/self/status并找到VmSize字段

FILE* handle = fopen("/proc/self/status","r");
// and then read its conttent find the VmSize string and its value

如果您想知道任意进程的虚拟大小,请打开该进程的"/proc/<process-id>/status",然后在那里找到VmSize字段。

答案 1 :(得分:1)

最便携的方式是使用getrusage()(请参阅manpage),但如果您的应用程序确实是Linux特定的,那么解析/proc/self/status的建议替代方案也同样好。