美文网首页Linux学习之路我用 Linux
Linux 里 free 命令结果阐释

Linux 里 free 命令结果阐释

作者: 风味沙拉 | 来源:发表于2019-07-22 16:12 被阅读0次

    目录

    现象
    示例
    Linux 虚拟内存简介

    现象

    Linux 机器上 free 命令显示 Mem: 行里的 free 栏位值快没了!情况危急,我是否需要立刻采取措施?

    在回答此问题之前,让我们先来看一个例子。

    示例

    下面的结果为在 CentOS 系统上 free 的输出:

                 total       used       free     shared    buffers     cached
    Mem:       8173440    5546388    2627052          0     276424    2492928
    -/+ buffers/cache:    2777036    5396404
    Swap:      4104596          0    4104596
    

    第一行 Mem

    total:总内存 8173440KB,不包括为内核保留的那一部分,因此总会比实际总内存小一点。此例中,实际物理内存大小为 8388608KB。

    used: 当前被占用的内存,5546388KB。

    free: 未被使用的内存,2627052KB。

    total = used + free,这里即 8173440 = 5546388 + 2627052

    shared / buffers / cached: 这些值包含在 used 里。

    第二行 -/+ buffers/cache

    -/+ buffers/cache: used 下面的值等于 Mem: used - (buffers + cached),即 5546388 - (276424+ 2492928),正好等于 2777036。

    -/+ buffers/cache: free下面的值等于 Mem: free - (buffers + cached),即 2627052 + (276424 + 2492928),正好等于 5396404。

    看到这里,我们知道,其实机器的物理内存还有很多,完全不用大惊小怪。

    第三行 Swap

    Swap: 交换使用情况,即内存里临时被置换到硬盘的数据。

    注意,在其他 Linux 系统中,free 也有可能输出下面的格式:

                  total        used        free      shared  buff/cache   available
    Mem:           3553        1192         857          16        1504        2277
    Swap:          3689           0        3689
    

    这里,available 指的是可分配的实际内存。

    Linux 虚拟内存简介

    和其他现代操作系统一样,Linux 就像总是尽量使用空闲的 RAM 来缓存对象,因此 Mem: free 的值总是很小。-/+ buffers/cache: 显示的值里没有考虑缓存(buffers + cache)的占用,因为缓存在需要的时候会自动释放。

    如果 -/+ buffers/cache: free 的值很小,那么 Linux 的的可用内存就是真的小了,此时要引起注意。

    相关文章

      网友评论

        本文标题:Linux 里 free 命令结果阐释

        本文链接:https://www.haomeiwen.com/subject/gyuwlctx.html