free 命令会显示内存的使用情况,包括实体内存,虚拟的交换文件内存,共享内存区段,以及系统核心使用的缓冲区等。
可用参数:
-b 以Byte为单位显示内存使用情况。5 l9 X0 V# j G- K
-k 以KB为单位显示内存使用情况。
; J+ y; h2 r1 t# h2 X, k F% r5 P-m 以MB为单位显示内存使用情况。" k; G4 j$ j0 g# B* L
-o 不显示缓冲区调节列。
9 B9 E7 m. f/ E4 ]& T8 d-s<间隔秒数> 持续观察内存使用状况。
. v o* W( u. {; n2 |6 e# x. Y6 n5 ?-t 显示内存总和列。7 W8 {' |/ T8 x) [, B
-V 显示版本信息。
上面是执行free -m 返回的结果,下面是对这些数值的解释:2 @" u5 V8 A0 l2 l8 ~0 \$ U8 x
total:总计物理内存的大小。
- |" p: _3 n& N7 E. rused:已使用多大。$ h: c$ i( e: P% a3 E v5 i* T
free:可用有多少。 G, _+ d3 _- {2 n5 Y
Shared:多个进程共享的内存总额。
2 Z7 X6 X2 f' m9 H, }Buffers/cached:磁盘缓存的大小。1 q. ^0 a7 x0 b# c
第三行(-/+ buffers/cached):
! E+ z# v$ t5 V& f( ~1 J+ S% ~used:已使用多大。
I) q9 y/ o; q' y, r% E4 S6 bfree:可用有多少。http://www.vpser.net VPS侦探
3 ]7 J. c8 J- P+ P( r/ r第四行是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会很快地被回收。: f9 d+ |. P; a" F
所以从应用程序的角度来说,可用内存=系统free memory+buffers+cached。
如何看额定值:4 X- C A0 n2 X: d8 M
cat /proc/meminfo
本文固定链接: http://vpsorz.com/?p=530 | VPS-orz