当前位置: 技术问答>linux和unix
关于进程内存使用问题
来源: 互联网 发布时间:2016-10-18
本文导语: 我在linux 平台跑一程序, 我用top命令检查进程的内存的使用情况。其中VIRT,RES,SHR,SWAP,CODE,DATA 都是固定值,保持不变,但系统的总可用内存却一直在减少,我想问一下top命令中的几个值VIRT,RES,SHR,SWAP,CODE,DATA 是否真能...
我在linux 平台跑一程序,
我用top命令检查进程的内存的使用情况。其中VIRT,RES,SHR,SWAP,CODE,DATA 都是固定值,保持不变,但系统的总可用内存却一直在减少,我想问一下top命令中的几个值VIRT,RES,SHR,SWAP,CODE,DATA 是否真能表示出某个进程的内存的使用情况?如果是这样,那么在VIRT,RES,SHR,SWAP,CODE,DATA 几个值不变的情况下,为什么系统的总可用内存却一直在减少?
我用top命令检查进程的内存的使用情况。其中VIRT,RES,SHR,SWAP,CODE,DATA 都是固定值,保持不变,但系统的总可用内存却一直在减少,我想问一下top命令中的几个值VIRT,RES,SHR,SWAP,CODE,DATA 是否真能表示出某个进程的内存的使用情况?如果是这样,那么在VIRT,RES,SHR,SWAP,CODE,DATA 几个值不变的情况下,为什么系统的总可用内存却一直在减少?
|
首先,不是内存泄露的问题,如果自己些的程序内存泄露,那么它占用的内存肯定会增加。
“系统的总可用内存却一直在减少”,什么现象?
Mem: 4054356k total, 2619400k used, 1434956k free, 30992k buffers
^^^^^^^^^^^^^^
这里的free越来越少?
Swap: 3903480k total, 0k used, 3903480k free, 301640k cached
^^^^^^^^^^^^^
那么,这里的cached有没有增加?
如果cached增加,就没有问题,linux在内存里缓存了很多数据(好象是磁盘文件)