我在我的系统上执行了 free -tm,并得到了以下输出。
空闲的缓冲区/缓存是否属于已用内存的一部分?因此我们可以将其视为空闲内存吗?
total used free shared buffers cached
Mem: 5721 5689 32 0 137 4664
-/+ buffers/cache: 887 4834
Swap: 6000 13 5987
Total: 11722 5703 6019
谢谢
答案1
看一眼这在 serverfault 上发布。它会向您解释免费输出。
答案2
是否将其视为“空闲内存”取决于“空闲内存”的真正含义。如果您指的是由于系统无法找到使用方法而被完全浪费的内存,则不应将其视为空闲内存。如果您指的是系统需要内存时可用的内存,则应将其视为空闲内存。
就我个人而言,我认为应该彻底废除“空闲内存”这一概念。现代操作系统管理物理内存的方式根本无法形成一个可以合理地描述为“空闲”的类别。
尤其是以下这种想法是完全错误的:“如果有可用的物理内存,那么我就不需要更多的 RAM。但如果几乎所有的物理内存都在使用中,那么我的系统就可以从更多的 RAM 中受益。”