free 命令会显示内存的使用情况,包括实体内存,虚拟的交换文件内存,共享内存区段,以及系统核心使用的缓冲区等。
可用参数:
-b 以Byte为单位显示内存使用情况。9 a, t% \+ T! J" h
-k 以KB为单位显示内存使用情况。# s* S- \0 m) A
-m 以MB为单位显示内存使用情况。' v8 R, [& Q) }
-o 不显示缓冲区调节列。/ h1 d5 i) j r9 E3 N P6 _
-s<间隔秒数> 持续观察内存使用状况。
) A( S' l. w0 F4 f-t 显示内存总和列。
2 W. d r9 d! z3 u) z; Y1 m$ `/ ?5 m-V 显示版本信息。
上面是执行free -m 返回的结果,下面是对这些数值的解释:
) V5 W* x% p4 f- j8 M3 z' Mtotal:总计物理内存的大小。; h# T! R7 a( W! w: k, Z# o
used:已使用多大。
$ ]3 }7 h) O7 `+ nfree:可用有多少。( _+ F) W0 t, _8 ~/ ?' c
Shared:多个进程共享的内存总额。
" `' V/ G3 v( _4 |# E2 HBuffers/cached:磁盘缓存的大小。
7 D: j9 F& d. ?( u* h3 K# Q第三行(-/+ buffers/cached):
2 k/ i& l j1 M5 i8 z" ?5 X- rused:已使用多大。5 e, `6 k" y/ f. j' a; |* n
free:可用有多少。http://www.vpser.net VPS侦探4 \9 E9 p2 f% S% j
第四行是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$ D0 N/ [7 v L所以从应用程序的角度来说,可用内存=系统free memory+buffers+cached。
如何看额定值:& g5 q9 D" i4 b. A1 a
cat /proc/meminfo
本文固定链接: http://vpsorz.com/?p=530 | VPS-orz