free 命令会显示内存的使用情况,包括实体内存,虚拟的交换文件内存,共享内存区段,以及系统核心使用的缓冲区等。
可用参数:
-b 以Byte为单位显示内存使用情况。( T* ], M3 i( z/ c/ ?
-k 以KB为单位显示内存使用情况。
: p2 K5 `& k6 ?" L-m 以MB为单位显示内存使用情况。
5 F5 D) u E a" T8 f: B# q- z# l-o 不显示缓冲区调节列。
5 d8 E& a7 e( V; c4 a6 i( ~-s<间隔秒数> 持续观察内存使用状况。# m4 ?" U, L/ k; Q
-t 显示内存总和列。
8 p5 ?0 ?7 h/ Y, s0 |2 k-V 显示版本信息。
上面是执行free -m 返回的结果,下面是对这些数值的解释:
: Z1 p2 G+ g2 E' d/ ztotal:总计物理内存的大小。3 y( i4 ]* l0 A
used:已使用多大。
; f$ ` t, s' k3 ?6 ~ Ifree:可用有多少。8 ?! I2 v7 ]4 \
Shared:多个进程共享的内存总额。
+ S# j8 Y f, G- f; |4 kBuffers/cached:磁盘缓存的大小。: R4 q( m& L& y6 f/ q. Q: S* ^. o
第三行(-/+ buffers/cached):1 i3 b# p3 \1 b
used:已使用多大。
F8 W! j0 a7 \& C$ Y( K' Kfree:可用有多少。http://www.vpser.net VPS侦探
/ ~( h4 K) L5 Z3 A第四行是swap。
区别:第二行(mem)的used/free与第三行(-/+ buffers/cache) used/free的区别。这两个的区别在于使用的角度来看,第一行是从OS的角度来看,因为对于OS,buffers/cached 都是属于被使用,所以他的可用内存是191MB,已用内存是168MB,其中包括,内核(OS)使用+Application(X, oracle,etc)使用的+buffers+cached.
第三行所指的是从应用程序角度来看,对于应用程序来说,buffers/cached 是等于可用的,因为buffer/cached是为了提高文件读取的性能,当应用程序需在用到内存的时候,buffer/cached会很快地被回收。& z; x) ~3 ^! s; J- A- J
所以从应用程序的角度来说,可用内存=系统free memory+buffers+cached。
如何看额定值:
/ `# I# q& G* @0 L. Ccat /proc/meminfo
本文固定链接: http://vpsorz.com/?p=530 | VPS-orz