小编Tim*_*mur的帖子

Linux:找出正在使用所有 RAM 的进程?

在实际询问之前,要清楚:是的,我知道磁盘缓存,不,这不是我的情况:) 抱歉,对于这个序言:)

我用的是CentOS 5。系统中的每个应用程序都在大量交换,并且系统非常慢。当我这样做时free -m,这是我得到的:

             total       used       free     shared    buffers     cached
Mem:          3952       3929         22          0          1         18
-/+ buffers/cache:       3909         42
Swap:        16383         46      16337
Run Code Online (Sandbox Code Playgroud)

所以,我实际上只有 42 Mb 可以使用!据我了解,-/+ buffers/cache实际上并没有计算磁盘缓存,所以我确实只有42 Mb,对吗?我想,我可能是错的,所以我试图关闭磁盘缓存,但没有效果——图片保持不变。

所以,我决定找出谁在使用我所有的 RAM,然后我就使用top了它。但是,显然,它报告说没有进程正在使用我的 RAM。我最上面的唯一进程是 MySQL,但它使用 0.1% 的 RAM 和 400Mb 的交换。当我尝试运行其他服务或应用程序时相同的图片 - 全部进入交换,top显示未使用 MEM(任何进程的最大值为 0.1%)。

top - 15:09:00 up  2:09,  2 users,  load average: 0.02, 0.16, 0.11
Tasks: 112 total,   1 running, 111 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.0%us,  0.0%sy, …
Run Code Online (Sandbox Code Playgroud)

memory linux performance

146
推荐指数
5
解决办法
37万
查看次数

标签 统计

linux ×1

memory ×1

performance ×1