Linux 监视内存命令

Linux 监视内存命令

我通过终端使用 watch -n 5 free -m 命令来观察内存波动,因为我运行虚拟盒的客户机的内存限制为 4GB(它在虚拟客户机启动时分配 4GB)。

在 USED 下,它显示 3 个不同的数字:Mem:7984(示例)-+ buffer/cache:4811 Swamp:0

什么是-+缓冲区/缓存?

我之所以问这个问题,是因为在运行 Virtualbox 之前,我使用了大约 800mb。我告诉 Virtualbox 使用 4GB。所以在我看来 -+buffer/cache 使用的是分配给 VirtualBox 的内存 +system 使用的内存。但是我不明白 Mem:所以我使用的接近 8GB 吗?有人能解释一下这个命令的输出吗?

答案1

是的,您使用了接近 8GB 的​​内存。具体来说,您使用了 7.984GB 的内存。这很好。拥有内存的全部意义在于使用它。未被使用的内存并不比您没有的内存好。

如果你在想“我现在想释放内存,以便以后使用”,那就别想了。你现在可以使用这些内存以后再用。现在不可能用 6GB,所以以后你可以用 10GB。你总是有 8GB 可用,就是这样。

在典型的系统中,大多数内存将保存可在需要时重新生成的信息。例如,当程序写入文件时,如果另一个进程读取该文件,则可以将该信息保存在内存中以节省磁盘 I/O。但是,如果需要将内存用于其他目的,则可以将该内存用于其他目的,因为数据可以直接从磁盘读回。缓冲区/高速缓存内存是保存不必留在内存中的数据的内存量,如果有更好的用途可以使用这些内存。

相关内容