free 命令会显示内存的使用情况,包括实体内存,虚拟的交换文件内存,共享内存区段,以及系统核心使用的缓冲区等。
可用参数:
-b 以Byte为单位显示内存使用情况。$ L: W+ U* m, U
-k 以KB为单位显示内存使用情况。( m4 z& i. @- A' A% N
-m 以MB为单位显示内存使用情况。- u' [$ Z& B/ P' |
-o 不显示缓冲区调节列。
2 D9 W1 ]9 r2 j-s<间隔秒数> 持续观察内存使用状况。, c/ q" @3 i, B- J& k6 d
-t 显示内存总和列。0 b9 H1 x. ~' W7 g# V
-V 显示版本信息。
上面是执行free -m 返回的结果,下面是对这些数值的解释:/ V$ M) M* S$ u$ E* F/ t" T! I
total:总计物理内存的大小。
0 h% l/ B S! |' m$ \" _! m7 V5 Nused:已使用多大。
- P/ _$ C/ m/ j" i# g$ `free:可用有多少。/ q- b( R/ {# m$ b
Shared:多个进程共享的内存总额。
' n, f; I# @! Z7 r/ C: o% Y. ZBuffers/cached:磁盘缓存的大小。% w8 a9 g H0 U8 F( [
第三行(-/+ buffers/cached):
7 B8 m; a- I/ k# ^4 o! i, t, sused:已使用多大。) e5 K, W7 G% N- M* o
free:可用有多少。http://www.vpser.net VPS侦探
3 E- F1 }# v; _; ]6 y, B2 ~第四行是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会很快地被回收。
" U/ Y% ?% V* E5 G# y$ u- k4 A3 C所以从应用程序的角度来说,可用内存=系统free memory+buffers+cached。
如何看额定值:
% H- Y+ y3 c8 B. D* jcat /proc/meminfo
本文固定链接: http://vpsorz.com/?p=530 | VPS-orz