哪个过程正在使用我的记忆?

时间:2012-08-03 15:33:16

标签: linux memory redhat

我基本上已经关闭了所有进程,但运行“top”命令仍然可以使用18GB:

top - 11:23:34 up 2 days, 19:20,  2 users,  load average: 0.00, 0.00, 0.00
Tasks: 202 total,   1 running, 201 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:  32940056k total, 19210460k used, 13729596k free,   182428k buffers
Swap:  2031608k total,        0k used,  2031608k free, 18688628k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                        
32326 csxbot    15   0 12760 1168  812 R  0.3  0.0   0:00.02 top                                                             
    1 root      15   0 10368  700  584 S  0.0  0.0   0:02.17 init                                                            
    2 root      RT  -5     0    0    0 S  0.0  0.0   0:00.00 migration/0                                                     
    3 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/0                                                     
    4 root      RT  -5     0    0    0 S  0.0  0.0   0:00.00 watchdog/0                                                      
    5 root      RT  -5     0    0    0 S  0.0  0.0   0:00.00 migration/1                                                     
    6 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/1                                                     
    7 root      RT  -5     0    0    0 S  0.0  0.0   0:00.00 watchdog/1  

使用我的19GB内存的过程是什么?我的操作系统是RHEL 6。 怎么检查。

-----------------------------更新----------------- -------- “free”命令基本上给出了相同的结果。由于此更新是 在我的原始帖子后几个小时,确切的数字可能会有所不同,但是 大缓存现象仍然存在:缓存了15GB的空间。

             total       used       free     shared    buffers     cached
Mem:         32168      15592      16575          0         76      14813
-/+ buffers/cache:        702      31465
Swap:         1983          0       1983

2 个答案:

答案 0 :(得分:6)

那是缓存的内存。它用于将数据从硬盘缓存到RAM中,并在需要时从RAM中使用。在读/写速度方面,RAM比硬盘驱动器快得多。

对于Linux OS,此行为完全正常。如果您的某些进程需要更多RAM,则某些缓存数据将被“释放”,并且该数量的RAM将可供进程使用。内核负责所有这些,不用担心。

答案 1 :(得分:3)

18688628k缓存

大约18 GB用于缓存IO操作