美文网首页Linux命令
linux free命令解释

linux free命令解释

作者: myang199088 | 来源:发表于2015-04-03 11:15 被阅读106次

    近期定位一个内存耗尽的问题,重拾了一下free命令的一些输出,觉得有必要解释一下free命令的一些输出。

    • 在linux下执行free命令
      sioss1:/export/home/SANEX9510_CSS # free
    total used free shared buffers cached
    Mem: 132130232 127626920 4503312 0 2083688 70900528
    -/+ buffers/cache: 54642704 77487528
    Swap: 33558524 2699944 30858580

    下面我们把这张表称为free表,通过下标来指代具体的行列,如free[1][1],就是表的第二行第二列,即132130232。

    • free表第二行解释,这个是从OS的角度去统计的
      free[1][1] = 132130232,表示系统总内存有132130232KB
      free[1][2] = 127626920, 表示系统已使用的内存有127626920KB
      free[1][3] = 4503312,表示系统未使用的内存有4503312KB
      free[1][1] = free[1][2] + free[1][3]
      free[1][5] = 2083688KB,
      free[1][6] = 70900528KB
      buffers和cached的解释如下

    A buffer is something that has yet to be "written" to disk.
    A cache is something that has been "read" from the disk and stored for later use.

    • free表第三行解释,这个是从应用程序的角度去统计的
      free[2][1] = 54642704KB,这个表示应用程序认为系统被用掉了多少内存
      free[2][1] = free[1][2] - free[1][5] - free[1][6],这个是因为buffers和cached回收是非常快速的,直接可以回收给应用程序使用
      free[2][2] = 77487528KB,表示一个应用程序认为系统还有多少内存;
      free[2][2] = free[1][3] + free[1][5] + free[1][6]

    • free表第四行解释,这个是交换空间的使用,比较简单,就不多做解释
      free[3][1] = free[3][2] + free[3][3]

    相关文章

      网友评论

        本文标题:linux free命令解释

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