所以我有一台服务器,我被报告来自多个位置的不同/存储内存,我无法理解这一切意味着什么。
以此为例:
root@****:~# free -m
total used free shared buffers cached
Mem: 16078 13857 2220 0 227 11032
您会看到我有 16G 的 ram,它显示其中将近 14G 正在使用,但实际上没有。现在我不瞎了,我看到上面写着“缓存:11032”,但这是什么意思?为什么要“缓存”那么多内存?它被缓存的目的是什么?为什么?
top
报告与 相同free
,但htop
报告不同:htop 输出 http://mc.socialshock.net/screenshots/2012-06-13_1915.png (2572/16078)
此外,webmin 的报告与 htop 相同。
那到底是什么?即使它被“缓存”,应用程序仍然可以在需要时使用它吗?
缓存的是文件系统。它这样做是为了让最常访问的文件位于内存中。这样,它就不必一直到磁盘再返回——从而提高效率。
不过请不要担心,当您的系统需要实际内存来存储某些内容时,它会将空间从缓存中换出。
另外,如果有人发现这个,这是我在问这个问题后发现的一个很好的资源。
http://www.linuxatemyram.com/