免费命令中有什么可用的v / s可用内存?

时间:2017-01-02 12:15:21

标签: linux unix memory heap-memory free-command

我在linux主机上发出的free命令的输出如下:

free
              total        used        free      shared  buff/cache   available
Mem:      263846320    47746620     3290072     1140808   212809628   214382420
Swap:             0           0           0

我无法弄清楚这个可用部分的具体内容。 即使总内存很高而且使用的内存仅为18.09%左右,所以可用内存的显示非常少,即大约1.24%。

free -h
              total        used        free      shared  buff/cache   available
Mem:           251G         45G        3.1G        1.1G        202G        204G
Swap:            0B          0B          0B

这是否意味着我无法启动更多应用程序,因为可用内存非常少。使用的内存仅为18%。因此,如果命令显示在上面,那么自由记忆不应该是82%而不是1.24%。

我很困惑。有人可以帮忙吗?

1 个答案:

答案 0 :(得分:24)

现代操作系统尽可能地保持尽可能少的内存。免费的内存实际上更难使用,因为它必须从免费转换为使用中。已经在使用的内存,即可用但不是免费的内存,可以很容易地切换到另一种用途。

这一切都很正常。浪费了可用内存,并且不会使您的系统更快。

如果你正在思考"但是我现在想要我的记忆,所以我可以在以后使用它",意识到这没有意义。你不能为以后节省内存。今天使用2GB的4GB系统明天不能使用6GB。您现在可以使用以后的内存。这里没有权衡 - 使用内存 free 。使用内存的唯一选择是浪费它。为什么你希望你的系统浪费更多的内存?