Answers:
您有112 MB的完全可用内存,但是您看到的501 mb没有“缓存”内存。这意味着操作系统可以更快地将一些内容存储在您的内存中。它称它为“二手”(因此您的“免费”号码只有112),但实际上在您需要时可以使用。
这是一件好事,因为未使用的内存是无用的内存。如果需要,可以清除缓存的内存。人们不需要在Windows 95上使用的旧的“我需要清理内存”的东西:这一切都很好,很开心:)
您要查找的数字是501个空闲(因为,因此为兆字节-m
)。
请参阅以下页面以供参考:
http://www.linuxatemyram.com/
http://www.itworld.com/it-managementstrategy/280695/making-sense-memory-usage-linux
解释输出free
:输出的
第一行free
列出:
total
您的总物理(假设没有虚拟化)内存used
当前使用了多少(任何东西)free
其中有多少是完全免费的(根本不使用)shared
(那里没有任何内容,请忽略该列)buffers
内核缓冲区使用的内存cached
用于缓存的内存最后两项是缓存和缓冲区,它们是未分配给特定用户进程的内存。它是内核为提高整体性能而保留的内存,而不是“应用程序”内存。这些区域将根据内核在缓存,内存压力,应用程序I / O模式等方面的策略而增长或缩小。
由于这两列不是用户分配的内存,并且如果用户分配需要,则区域可以缩小(实际上为零),因此它们在某种意义上是“空闲”的-如果您的应用程序有内核可以释放的RAM积极地需要它。
那就是第二行告诉你的。它从used
列中删除缓冲区和高速缓存存储器(这就是-
方法),并将+
它们添加()到free
列中。(可能会发生一些大问题。)
(最后一行显示交换空间的状态。)
礼貌: https : //unix.stackexchange.com/a/33549/14497
因此,在您的情况下,112MB是完全可用的内存,并且如果考虑到用于缓存的内存,则可以在需要时将其分配给用户应用程序;那么501 MB是实际可用的最大内存。
@ saji89的回答非常好,但是现在这些天free -m
不再打印-/+ buffers/cache
行,而是将可用RAM的数量available
放在第一行的新列中,例如:
ubuntu@pg_master:~$ free -m
total used free shared buff/cache available
Mem: 61406 1571 506 17131 59328 42150
Swap: 0 0 0
ubuntu@pg_master:~$ free -V
free from procps-ng 3.3.10
您可以阅读对free(1)的提交,该提交删除了其repo中的行。也是添加新available
列的提交。
free
命令显示有关未使用和已使用的内存以及交换空间的信息。
以下是http://www.linfo.org/free.html提供的说明
第一行标记为Mem,显示物理内存利用率,包括分配给缓冲区和缓存的内存量。缓冲区(也称为缓冲存储器)通常被定义为一部分存储器,被留作临时存储位置,用于存储从外部设备(例如HDD,键盘,打印机或网络)发送或接收的数据。
第二行数据以-/ + buffers / cache开头,显示了当前专用于系统缓冲区高速缓存的物理内存量。对于应用程序而言,这尤其有意义,因为从系统上的文件访问的所有数据(通过使用read()和write()系统调用1执行)都将通过此缓存。通过减少或消除对HDD或其他磁盘的读写需求,此缓存可以大大加快数据访问速度。
第三行以Swap开头,显示了总交换空间以及当前正在使用的交换空间和仍然可用的空间。
让我们分析系统的内存使用情况
您已将free
命令与'-m'选项一起使用,该选项用于以兆字节为单位显示结果
-m, --mega
Display the amount of memory in megabytes.
总内存为595(已用+免费)
使用:482免费:112
595MB中的482MB用于系统,其中活动程序仅使用93MB,高速缓存中剩余324MB
因此,当您将来运行任何程序时,请说它需要更多120MB。将提供全部112MB(当前可用),剩余的8MB将从非活动程序缓冲区/高速缓存中获取。
编辑:找到此链接,它提供了很好的解释。
595-93=501
and(取整或取1mb取整),它的读取有点像是112
您认为op正在寻找的数字。