如何在Linux中获取一个进程的内存

key*_*lov 6 unix linux

可能重复:
Linux:如何衡量应用程序或进程的实际内存使用情况?

为什么我在Linux中使用'top'来显示我对一个进程的记忆,我得知进程的存储只会增加而不会减少,除非我关闭所有进程.我不知道为什么,尽管我使用'免费'只落后'malloc'.如何获得正确的实时实时存储?谢谢大家.

K17*_*73R 8

找到pid,如果它作为同一个用户运行,使用"ps aux",否则使用"ps ax",然后执行:

cat /proc/<PID>/status
Run Code Online (Sandbox Code Playgroud)

这应该是你想知道的全部.


Lee*_*ley 5

简短的回答是,在现代操作系统上,这非常困难.

在进程终止之前,free()ed的内存实际上并没有返回到操作系统,因此分配和释放逐渐增大的内存块的许多周期将导致进程增长.(通过)

这个问题已经在另一个SO线程中得到了更详细的回答.你可能会在那里找到答案.