从 free 命令显示的缓冲区高速缓存与可用内存有什么不同

从 free 命令显示的缓冲区高速缓存与可用内存有什么不同

我们的集群中有 463 台 RHEL 7.6 机器,其中大部分是 HDFS 机器(datanode)

free -g命令我们通常可以增益/缓存当总内存为256G时,e约为30-50

据我所知 - 缓冲区是一个内存区域,用于在从一个地方移动到另一个地方时临时存储数据

但可用内存也是用于应用程序的内存

所以我有点困惑,两者之间有什么区别增益/缓存可用的记忆 ?

答案1

可用的内存是可供应用程序使用的 RAM 总量。
增益/缓存是 Linux 用于磁盘缓存的内存;当应用程序需要它时它会被释放,因此它不计为“已用”内存。

引用自http://www.linuxatemyram.com(强调我的):

您和 Linux 都同意应用程序占用的内存是“已使用的”,而未用于任何用途的内存是“空闲的”。

但是,如何计算当前已用于某些用途但仍可供应用程序使用的内存呢?

您可以将该内存视为“空闲”和/或“可用”。相反,Linux 将其视为“已使用”,但也将其视为“可用”。(...)这个“东西”(大致)就是 top 和 free 所说的“缓冲区”和“缓存”。由于你的和 Linux 的术语不同,你可能认为你的内存不足,但事实并非如此。

也可以看看:

相关内容