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

有没有简单的方法如何从C / C ++代码获得Linux进程的virt大小? 谢谢

如果你想找出你自己的进程的虚拟大小,你只需要读取/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字段。

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