首页 > 代码库 > Linux中内存查看命令free详解(转)

Linux中内存查看命令free详解(转)

add by zhj:说了那么多,其实看第一行就足够了,free项就是未使用的内存。其实,我是感觉压根就没必要

使用free命令,用top代替就行了

 

原文:http://liustb.blog.163.com/blog/static/1337080192011718112434416/

free命令用来查看内存的使用情况,与Top命令相比,开销较小。

     $free –m

                  total          used        free        shared         buffers        cached

     Mem:    1002          769         232            0                 62              421

     -/+ buffers/cache    286         715

     Swap    1153           0           1153

 

    说明:在理解free命令的输出项的时候,要区分两个概念:第一行(mem),是针对操作系统来说的,而对操作系统来说buffer和cache都是属于被使用了的内存。第二行(-/+ buffers/cache)是针对应用程序来说的,而对应用程序来说,buffer和cache都属于可以使用的内存。

    所以:

    第一行(mem):

      total:表示系统可使用的物理内存的总量为1002;

      used表示已经被分配的内存为769,具体包括真正已经被使用掉的buffer和cache内存286,未使用的buffer内存62,未使用的cache内存421,即769 = 62 + 421 + 286;

      free:表示未分配的物理内存为232;

      buffers:已经被系统分配而未使用的buffer内存62;

      cached:已经被分配而未使用的cache内存421;

 

   第二行(-/+ buffers/cache

     used:已经被应用程序真正使用掉的buffer和cache内存为286;

     free:可以被应用程序使用的内存为715,其中包括:已经分配而未使用的buffer内存62,已经分配而未使用的cache内存421,还没有被分配的内存232,即: 715 = 62 + 421 + 232;

 

   另:linux中buffer与cache的区别:

     buffer:要写到硬盘上去的数据内存;

     cache:读取到内存中的数据内存;

Linux中内存查看命令free详解(转)