问个缓存的问题
$ top
top - 09:55:23 up 460 days, 22:29, 2 users, load average: 0.05, 0.19, 0.21
Tasks: 133 total, 1 running, 132 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.3%us, 0.1%sy, 0.0%ni, 99.5%id, 0.0%wa, 0.0%hi, 0.1%si, 0.0%st
Mem: 8175452k total, 8116528k used, 58924k free, 593356k buffers
Swap: 6881272k total, 1145040k used, 5736232k free, 2573216k cached
1. Mem中的buffer free,Swap中的cached都是什么意思?
2. 我的理解是cached和buffers在系统内存不够时 是会回收的,还不够就用swap。但是现在系统有2.5G的cached,但却用了1G多的swap,这个什么原因,正常吗?
------解决方案--------------------可能内存使用峰值已经超过内存了,导致部分swap,还没来得及换进内存。
------解决方案--------------------MEM中的free当然是空闲内存,buffer是缓冲区
SWAP中的cache是曾经从内存中交换出来,后面又交换进去的内存那部分swap
2. 我的理解是cached和buffers在系统内存不够时 是会回收的,还不够就用swap。但是现在系统有2.5G的cached,但却用了1G多的swap,这个什么原因,正常吗?
这个很正常啊,你开机那么多天了,cached就会越来越大。cached是为了优化而存在的,系统不用的时候暂时不回收的那部分曾经使用过的swap,swap现在用的是1G多,cached也属于空闲的swap。