Vmstat与iostat zz

上一篇 / 下一篇  2008-06-06 20:10:51 / 个人分类:LAMP

Linux在具有高稳定性、可靠性的同时,具有很好的可伸缩性和扩展性,能够针对不同的应用和硬件环境调整,优化出满足当前应用需要的最佳性能。因此企业在维护Linux系统、进行系统调优时,了解系统性能分析工具是至关重要的。
g|"d[{Yt0

%J7Gy"C fP*f2\.E8c0  在Linux下有很多系统性能分析工具,比较常见的有top、free、ps、time、timex、uptime等。下文将介绍几个较为重要的性能分析工具vmstat、iostat和sar及其使用。

^#S:]2E"w(Ps!De#b0木铎校园 BBS 社区$? My#|?6~[0Wv

  用vmstat监视内存使用情况

5Vh(q@3v(y@A0木铎校园 BBS 社区S(`&\!X+|*X Lk"H

  vmstat是Virtual Meomory Statistics(虚拟内存统计)的缩写,可对操作系统的虚拟内存、进程、CPU活动进行监视。它是对系统的整体情况进行统计,不足之处是无法对某个进程进行深入分析。木铎校园 BBS 社区*?1}2fy4~AuN1INB Q

木铎校园 BBS 社区7w x!G ~:? pS

  vmstat的语法如下:木铎校园 BBS 社区`8Z-b/o[im]

木铎校园 BBS 社区H-F$R Wz9fvj

  vmstat [-V] [-n] [delay [count]]木铎校园 BBS 社区3^3s3`i!@0L
木铎校园 BBS 社区(_ i huceAY k

木铎校园 BBS 社区X4w-Iyo,C1[D!T `9c6XH

  其中,-V表示打印出版本信息;-n表示在周期性循环输出时,输出的头部信息仅显示一次;delay是两次输出之间的延迟时间;count是指按照这个时间间隔统计的次数。对于vmstat输出各字段的含义,可运行man vmstat查看。

t^r(Cn6Nu6j/C0

.tm:o~ {K'u0  用iostat监视I/O子系统情况

7u:?7a!K;`d|*u x0

G Y1|e'k#O0   iostat是I/O statistics(输入/输出统计)的缩写,iostat工具将对系统的磁盘操作活动进行监视。它的特点是汇报磁盘活动统计情况,同时也会汇报出 CPU使用情况。同vmstat一样,iostat也有一个弱点,就是它不能对某个进程进行深入分析,仅对系统的整体情况进行分析。木铎校园 BBS 社区)SAU&F c/p-`e

木铎校园 BBS 社区O*}!`8du'| ZS9u-Z

  iostat的语法如下:

fj}8t)OxQ0

mra T3zH B0
Uff1Auf0iostat [ -c | -d ] [ -k ] [ -t ] [ -V ] [ -x [ device ] ] [ interval [ count ] ]木铎校园 BBS 社区:r%{$~] v9e8\:b x
木铎校园 BBS 社区/tY Wkwx

木铎校园 BBS 社区,|N h0@0WA-^spZ

   其中,-c为汇报CPU的使用情况;-d为汇报磁盘的使用情况;-k表示每秒按kilobytes字节显示数据;-t为打印汇报的时间;-v表示打印出 版本信息和用法;-x device指定要统计的设备名称,默认为所有的设备;interval指每次统计间隔的时间;count指按照这个时间间隔统计的次数。

9GP.@1_a$d9\9a \kP0木铎校园 BBS 社区!A mR#rM:_y!aLSQ

  iostat一般的输出格式如下:

6v-qS p\?0

3YB(ES#W0Linux 2.4.18-18smp (builder.linux.com) 2003年03月07日木铎校园 BBS 社区-M j8B?X

木铎校园 BBS 社区)b%G-x8? xHT\

avg-cpu: %user %nice %sys %idle

(]Q-Fj0cZ2uo0木铎校园 BBS 社区ca|L\

4.81 0.01 1.03 94.15木铎校园 BBS 社区7vS[.\%q#uv1O

木铎校园 BBS 社区"C!FJ.s/U2]

Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn木铎校园 BBS 社区N&\Z})Esm l

木铎校园 BBS 社区(at @4O3[)p

dev3-0 30.31 1117.68 846.52 16104536 12197374

5xdB)FO o~ T,a0

3`Xm H/MMoB0dev3-1 7.06 229.61 40.40 3308486 582080木铎校园 BBS 社区8K5u9X,@9UvUh W!V

/eq}3g-],My d_R0木铎校园 BBS 社区2f\|hmG~.K)T

对于输出中各字段的含义,iostat的帮助中有详细的说明。木铎校园 BBS 社区0TR"aH$Lzp3`

木铎校园 BBS 社区Pdx3kR(@R

vmstat 命令报告虚拟内存统计信息和CPU负荷:页面调度,交换,任务交换,CPU利用率。命令的语法是:
b |N:@-zg K^0vmstat [-cisS] [d1 d2 d3 d4] [interval [count]]
W-E O4A:xw*o0当不用选项时,vmstat显示一条曲线表示自从系统启动后活动的信息。如果指定interval(时间间隔),接下来的线是重复显示最后的interval期间活动的情况,直到用户中断命令执行。当同时提供计数器时,统计信息按时间计数来显示。
O$q5}'X8S9PE0如果指定了一个磁盘名(如d1,d2,等等。),这些磁盘得到优先显示。通常,系统上的前4个磁盘设备是显示的,因为只有四个设备能在一线条上显示,这个 选项允许性能分析员修改缺省显示选项。(*磁盘名通常随id,sd,xd,或xy (取决于类型和I/0界面)加一个数字,如id0,sd2,xd1等等命名而定。)
@*X3|/qR&W$W9O/{ R0,vmstat 命令显示若干字段信息:木铎校园 BBS 社区-L#z(j,Q(i'r5jR(U;i

&Z5g Vl2q uR0

-`4HY3u0sc5j&p+x0procs 报表下面三种状态的进程数:
N?M9|+jCla0r--在运行队列中等候运行
zis\#rUr-A0b--被资源阻塞(I/0,页面调度,等等.)
0G Z He[g0w--可运行但是被换出的
v2U/bXN)y$] P0memory 报告虚拟内存和实存信息:
\'x#L-AM3Z Me1brw:v0swap--以千字节为单位的当前可用交换空间的数量木铎校园 BBS 社区6W TIT+]+r
free--以千字节为单位的页自由表大小
"b~ M*H(b3z0page 报告每秒页面调度活动数量的信息:木铎校园 BBS 社区Y%tT_5YpM
re-从自由表回收页木铎校园 BBS 社区A'o5x5O"fr~6?U
mf--次要的错误;地址空间或硬件地址转换错误木铎校园 BBS 社区)b/j$K(uw(S CEpA
pi--页入的千字节数
LqDdJ*O"h%pS0po -页出的千字节数木铎校园 BBS 社区&R*` E]Q^M
fr- 释放的千字节数
U!O?:x F*a5Q.V!h0de--以千字节为单位的可接受的短期内存不足数木铎校园 BBS 社区z6{m+H u8Y
sr--页由时钟算法扫描
] E+VV CA*Oc?jk0disk 可以为四个磁盘报告每秒磁盘I/O的数量

8UW&t@3c!`&M]!c0

$@s1C:d.b-e0faults 报告每秒系统软件中断和硬件中断的速率
b,`K"B+@}!BO%rL6y0in-设备中断,不包括系统时钟中断木铎校园 BBS 社区:aQ+}&@7qc
sy-系统调用
+eH F L`?Ff0cs-CPU任务(上下文)交换木铎校园 BBS 社区$k q8DI5V%MS4U!HK0k
cpu-- CPU故障时间的百分比,在多处理器系统上,这是全部处理器的平均值:木铎校园 BBS 社区(N ?B\R
us- 用户时间
In4ceg;h2b0sy-- 系统时间
D*o#][^o'j0id-- 闲置时间
fV%qB6R2] y0vmstat命令有四个可选标志可供使用。如果机器有虚拟地址缓存-c标志就改变输出报告缓存刷新统计数据。报告包括自从系统启动后每种缓存刷新全部总量。六个缓存类型是用户,上下文,区域,段,页,部分页。
N{/R;v%v bP&aB0-i标志 使输出变为报告中断的数量。如果给出设备名,如d1,d2等,监控将在设备级*执行,(*注,参阅第十二章有关打开设备级监控的信息。)并报告每个给定设备的统计信息。
:o~c,hh%z0修改"普通"报告来显示交换而非页面调度活动的信息。这选项改变显示的两个字段:si(换入)和so(换出)替代了re和mf字段。
6~#blU_9L2LTF!dJ0值得注意是,interval 和count选项对-i或-s选项是非法的。

QD"Fd7cB.w0

5KL6e7@-t7Z*l2o0vmstat 参数详解
(~#R u&di]'K;P-s^0procs:

u"ecdr3W{9Gw.D^0

.D6`p"q-{0r-->在运行队列中等待的进程数木铎校园 BBS 社区MZ%sP)V#Q$J5O
b-->在等待io的进程数木铎校园 BBS 社区c5m;XE$r)ry
w-->可以进入运行队列但被替换的进程

w8R!kQ)[-Vw0

Qq Sg#[B0木铎校园 BBS 社区(@ ?+Y fe t1y y
memoy

'Jm.aF$uV0

vaOZI4z [-|0swap-->现时可用的交换内存(k表示)
(k I(Ac?0free-->空闲的内存(k表示)
木铎校园 BBS 社区RK7iTNr:ThbIcq

+h&t+gk.NFr!u0木铎校园 BBS 社区Kb#XV_9rt
pages木铎校园 BBS 社区wYqh,acg4q$oP&B

木铎校园 BBS 社区9i|w2Gn ? OD4k

re--》回收的页面
Y)T-E*l.t({8v(?6F_0mf--》非严重错误的页面
{`F4sox)\0pi--》进入页面数(k表示)
:qD}C"y a&Mu0po--》出页面数(k表示)木铎校园 BBS 社区 }`9mA't$wjw
fr--》空余的页面数(k表示)木铎校园 BBS 社区-w3`htK(N*mo8UM
de--》提前读入的页面中的未命中数
2B|`h)n.Ryw0sr--》通过时钟算法扫描的页面
木铎校园 BBS 社区1w\ y'[b

木铎校园 BBS 社区,c%Ft*c h+H*~#n/Y#e


hA-^#Y"|-~ ]0disk 显示每秒的磁盘操作。 s表示scsi盘,0表示盘号

r#t1CIQ E0

j#DR?0B7XUq0fault 显示每秒的中断数
{];c afM'T |0in--》设备中断
b-n7z ?4}~5e`0sy--》系统中断
XNo8Vd\0cy--》cpu交换

{|ss~0木铎校园 BBS 社区9l,I:NDpI-AA9Z


:z v]iY9k-lP RY0cpu 表示cpu的使用状态

2LnG*UMWk2f~ V j W0木铎校园 BBS 社区:^ `$]:EPi

cs--》用户进程使用的时间木铎校园 BBS 社区v2_B*?k"Zn9fT^
sy--》系统进程使用的时间木铎校园 BBS 社区c+Y3l9TvI
id--》cpu空闲的时间

)Tr2a/ew0木铎校园 BBS 社区 r3|@r4k?Uba

FIELD DESCRIPTIONS木铎校园 BBS 社区 ]_rkU U2U,~

gGlH:gK$ZK0Procs

5{]T#r:`_0

Kg:G#h;l0J9sh _0r: The number of processes waiting for run time.

"j&\7bZ)r0

T#Z@&lDr^iO0b: The number of processes in uninterruptable sleep.

#Qr P6XK n(W9F\/N0

.H:`+IWO2t#a0w: The number of processes swapped out but otherwise runnable.

!\ b r&D;z0

EPX5E },Sgi$j9GQ0Thisfield is calculated, but Linux never desperation swaps.

&{ c-x"PVMs0

Q1b zOR4I0木铎校园 BBS 社区#V,w7W9qUI/]?

木铎校园 BBS 社区4n"vZ2x'O;i

Memory木铎校园 BBS 社区~t3seqd Ja2F h

木铎校园 BBS 社区%v2P9j2N2Sg:| ?

swpd: the amount of virtual memory used (kB).木铎校园 BBS 社区p/Z Ea i/V xi$n`

7l:j8[S IMA0free: the amount of idle memory (kB).木铎校园 BBS 社区zORt4U'\4LO

t5Aw2v;VNrZK0buff: the amount of memory used as buffers (kB).

fd5}8?/o"Y Xe^~0

Jj|1W@*V.?;o O0

$H)n bSIVY0

Lb8mO1d0Swap木铎校园 BBS 社区(cu1I2S%V'\

木铎校园 BBS 社区3y!XdL5`+^$W5jYY

si: Amount of memory swapped in from disk (kB/s). 虚拟内存的页导入(从SWAP DISK导入RAM)木铎校园 BBS 社区1GY&Kj\N2uka

U-z)x2@PI0so: Amount of memory swapped to disk (kB/s). 虚拟内存的页导出.木铎校园 BBS 社区6ej q-y ~tf

木铎校园 BBS 社区ER8Kc']y?7cx

(从RAM到SWAP DISK)

o`hyp+V+r&fI0木铎校园 BBS 社区1~4i0z:U#w5[ j

木铎校园 BBS 社区:Iz&wP]5[

木铎校园 BBS 社区4O$x1\D2j3b

IO

#O;^6m(oZ5qV+U#y Q0

#HV` V3Ek0bi: Blocks sent to a block device (blocks/s).

*FWQ[({\&jE0木铎校园 BBS 社区V-~!Q*v+fU+M8u)\

bo: Blocks received from a block device (blocks/s).

I7C;iU%^m j'h'@,e(X0

u,FCE2p"A0木铎校园 BBS 社区 b8aSR M!x4h.Q0l"o!SoY

木铎校园 BBS 社区C_ v$rn8d3A{

System

v'zyaCb0

~U u`(I0in: The number of interrupts per second, including the clock.

)Oub*_6e5Nj7f0木铎校园 BBS 社区['O]m+i w

cs: The number of context switches per second.

s.a*mgT0

&Xb\x4[HjB8M I0: CPU木铎校园 BBS 社区{dOe m VQ

木铎校园 BBS 社区 ~l&M"qL@'g},? D%B,A

These are percentages of total CPU time.

7J }tSE0木铎校园 BBS 社区 y!}d~O.o9K

us: user time木铎校园 BBS 社区9X{*tm$Xb*o

7Fz5{Qh1zq0sy: system time

6g]^0x,]Wi!s(H0

:X4q^v(U.q)Z+iA}W0id: idle time木铎校园 BBS 社区0Lh;]G7r4a

木铎校园 BBS 社区7g+J|bR9?

如果 r经常大于 4 ,且id经常少于40,表示cpu的负荷很重。木铎校园 BBS 社区)]5?k aK)Q!OoK
如果pi,po 长期不等于0,表示内存不足。木铎校园 BBS 社区%T w V:oTY7l {
如果disk 经常不等于0, 且在 b中的队列 大于3, 表示 io性能不好。
木铎校园 BBS 社区*crR$x^{q

木铎校园 BBS 社区%]&gx1^3r+_r

由vmstat看服务器木铎校园 BBS 社区 }:h [p"yG

木铎校园 BBS 社区VK:GH(e.A6|vD

木铎校园 BBS 社区!IK _3Me
说明:由于STATSPACK并不能获取全面分析性能问题所需要的所有信息,所以需要扩展其收集服务器的统计信息。(本文环境REDHAT Linux7.2)

Aqp,t)w&w+Hz0木铎校园 BBS 社区bL2j dG vt/r

木铎校园 BBS 社区;\\ {#B,a

木铎校园 BBS 社区?2Mn-E d#u)I6P

VMSTAT介绍

3?W6hp E v8YB0

b%L ]DKeJhR0通过STATSPACK收集服务器信息,主要通过收集VMSTAT的信息来展现服务器状况。VMSTAT工具是最常见的UNIX监控工具,可以展现给定时间间隔的服务器的状态值。

`+X Y Cu'p0木铎校园 BBS 社区%O:m9c['O!n1L _k

一般VMSTAT工具的使用是通过两个数字参数来完成的,第一个参数是采样的时间间隔数,单位是秒,第二个参数是采样的次数。如:木铎校园 BBS 社区iU+Fr!U(xaT

!dDU A?$D!w ^0[oracle@brucelau oracle]$ vmstat 1 2木铎校园 BBS 社区MNo y r9? FV'xH

木铎校园 BBS 社区@ fVs(}$eP!A

procs memory swap io system  CPU木铎校园 BBS 社区'HhQt;uk5e `:Y

0T)@Kp%I5@7F*rUGx0r b w swpd free buff cache  si so bi bo in cs us sy id木铎校园 BBS 社区R1ZP{r}rT+Z\[

%c1FI*R G.Z)G+]01 0 0 0 271844 186052 255852 0 0 2 6 102 10 0 0 100

5R[ d!uW5D bgNo6z0b0

gh5d*i7i T00 0 0 0 271844 186052 255852 0 0 0 0 104 11 0 0 100木铎校园 BBS 社区.m SwQYZ@7i+L

U d\+y FUU1i I0

&d jPR9?-Qw E0木铎校园 BBS 社区6nN)eAt(Ha$e

(注:目前系统几乎空闲,并且不同操作系统VMSTAT输出内容有所不同)

U*|$`h[twB0

)nB ^ HU(N/D0

(C/p E6y6k&Z0

/Zi!]T:eN"tyP&C0目前说来,对于服务器监控有用处的度量主要有:

7d t~"SN0f)v-F0木铎校园 BBS 社区 W ru;H s$H3y_ K @

r(运行队列)木铎校园 BBS 社区3G5~mOb$j~_6h[E#`

vQG%UtbM.K4X5aZ0pi(页导入)

qK-n].y` d%@0

v V7i7Kf%b/k0us(用户CPU)木铎校园 BBS 社区#v%aC \G-G'sE

X@r)E9?+a~?%X0sy(系统CPU)

e5K#j:J;e,H,c0

[0ls`{;E0id(空闲)

$h-O)TZ.p(X ` O*GM0木铎校园 BBS 社区0gFD[0H2fm b1t

木铎校园 BBS 社区{!LoOjV e f!_ V

木铎校园 BBS 社区^qo;W_'{!{jG

通过VMSTAT识别CPU瓶颈木铎校园 BBS 社区v}#G%G$F7d-Q'F a

^Il+_)T/Z(O]$L0r(运行队列)展示了正在执行和等待CPU资源的任务个数。当这个值超过了CPU数目,就会出现CPU瓶颈了。

Uf8L1xsSW0

5}.l&{'| @4MO5V?-^0获得CPU个数的命令(LINUX环境):

~ D(c6w,WO`/]9L0木铎校园 BBS 社区.BQ E }"u R6Z]z

cat /proc/cpuinfo|grep processor|wc –l木铎校园 BBS 社区y:\X`y2X OLo5D

木铎校园 BBS 社区5Xan3xa.HG#b

当r值超过了CPU个数,就会出现CPU瓶颈,解决办法大体几种:木铎校园 BBS 社区Q.aIyn/u

y@T]*U'nIQ01. 最简单的就是增加CPU个数木铎校园 BBS 社区v,]m_G$TB)r

木铎校园 BBS 社区^+zsseE

2. 通过调整任务执行时间,如大任务放到系统不繁忙的情况下进行执行,进尔平衡系统任务

W X2I1v Ij!^{0

$y5d x2|&R7H W:m03. 调整已有任务的优先级木铎校园 BBS 社区~,_ @M&E"J|Zg

木铎校园 BBS 社区0nid t]a

og0M?I]_+e0木铎校园 BBS 社区/FO/x2LN6KG3h

通过VMSTAT识别CPU满负荷木铎校园 BBS 社区l5`w smO'Kw1@5Q;yI&~M

木铎校园 BBS 社区:nV/I7HKE2v

首 先需要声明一点的是,vmstat中CPU的度量是百分比的。当us+sy的值接近100的时候,表示CPU正在接近满负荷工作。但要注意的是,CPU满 负荷工作并不能说明什么,UNIX总是试图要CPU尽可能的繁忙,使得任务的吞吐量最大化。唯一能够确定CPU瓶颈的还是r(运行队列)的值。木铎校园 BBS 社区;L3Wgg#L'ah

`Kj+S.`;`%ihh-L(?0木铎校园 BBS 社区7O(k.Lkm[]i

木铎校园 BBS 社区Cc#^n&aG

通过VMSTAT识别RAM瓶颈

,K p V V^Xk0木铎校园 BBS 社区(?l4C/A&R

数据库服务器都只有有限的RAM,出现内存争用现象是Oracle的常见问题。木铎校园 BBS 社区9n/s ofzJR9zv:D

木铎校园 BBS 社区[/U|G'G

首先察看RAM的数量,命令如下(LINUX环境):

xoz`g0oZ2x#\0木铎校园 BBS 社区$\&a[|.pu

[root@brucelau root]#free木铎校园 BBS 社区3Yn@k1MZ? rM

木铎校园 BBS 社区8d?glO.e5~ L`

total used free shared buffers cached

e+N(n1D0H4g|9Ec0木铎校园 BBS 社区 O*b/Z U$s_d`

Mem: 1027348 873312 154036 185736 187496 293964

)eza%I W?T!U0木铎校园 BBS 社区f4PlX%N)TT3? cb

-/+ buffers/cache: 391852 635496

'Sf4BT.u0木铎校园 BBS 社区Kd}G M&[ea

Swap: 2096440 0 2096440木铎校园 BBS 社区"\rs+bB)MhM!vOr

bM Me1J7F \0

|.^)LC7B4u?5e0

,^/EZf%uQ0当然可以使用top等其他命令来显示RAM。

U9VA#B!X&eV Z!|{$i{J0木铎校园 BBS 社区j*mz [0@"n'D.G

当 内存的需求大于RAM的数量,服务器启动了虚拟内存机制,通过虚拟内存,可以将RAM段移到SWAP DISK的特殊磁盘段上,这样会出现虚拟内存的页导出和页导入现象,页导出并不能说明RAM瓶颈,虚拟内存系统经常会对内存段进行页导出,但页导入操作就 表明了服务器需要更多的内存了,页导入需要从SWAP DISK上将内存段复制回RAM,导致服务器速度变慢。木铎校园 BBS 社区&T4VtbV6oLh/[9N6Q

木铎校园 BBS 社区8f$KO3HB!w:W

g~F"~{7xPn0木铎校园 BBS 社区@Gkf'PA8a)l

解决的办法有几种:木铎校园 BBS 社区6f3S*S[ x]

'?)b*vWp(d'J+vJ"}01. 最简单的,加大RAM

Diby&e9r:m"q0

#SV.p^5b/U m"hD,Ac02. 改小SGA,使得对RAM需求减少

_-Q LF XWh#f,?z0木铎校园 BBS 社区.ZT.e wqMZ,P

3. 减少RAM的需求(如:减少PGA)木铎校园 BBS 社区0n#z-@MG|/x

&oBKi(X~ L.a0

{%ox*[$K }H0

,S!_MV2r0我们基本的了解了VMSTAT工作,下面是STATSPACK通过vmstat统计收集服务器性能数据。木铎校园 BBS 社区f$j S'ID

zq|D Qzxu0

HB4n/S9j[GdC0

D O#H1? xBE0STATSPACK通过vmstat收集服务器信息木铎校园 BBS 社区z _TN!]

木铎校园 BBS 社区[`0}$L^(Q*|`/hL@U]

首先在perfstat用户下建一个存储服务器信息的表:如

6k"BJ#@(dm^0

bQ*Z2oEq%]m0建表:

r O }F%[&xa/HW0木铎校园 BBS 社区\zwE2]

create table stats$vmstat木铎校园 BBS 社区o};FjebFU%{OE

+OlF2j;xv}p~1z.k0(

8k] EeS0

5b3a8tr3L\,AyV*d0start_date date, --系统时间

;LB*NV5Q0木铎校园 BBS 社区j2Q7D2B5I

duration date, --时间间隔木铎校园 BBS 社区 H9d S%Kw)C1wnV Pq5],w

0_(sj(|4|8u,WaT0server_name varchar2(20), --服务器名称

,E]E,T1sy0木铎校园 BBS 社区.qnPt$MZ _

runque_waits number, --运行队列数据

W(ngG:d"fi B0

"U*v#_ _o0page_in number, --页导入数据木铎校园 BBS 社区Z c!Z+w3[yB

木铎校园 BBS 社区/U(g;Es)N

page_out number, --页导出数据木铎校园 BBS 社区xM uFY8Y!m

木铎校园 BBS 社区"WW)ju6ry0@]

user_cpu number, --用户cpu数据木铎校园 BBS 社区@$Ys/o P%H u{

$a xn?2{s%S}T0system_cpu number, --系统cpu数据木铎校园 BBS 社区2^#tpUr2b:I

C+L5s,h.WC0idle_cpu number, --空闲cpu数据

e |1OYh B B5`7s0

1K OeSU%m:vG$RE0wait_cpu number –等待cpu数据(只是aix存在)

t?yyP;~ R \I4KQ6T0木铎校园 BBS 社区,JC}!v:x5Z,YS1a(Q

)木铎校园 BBS 社区{ i&VUZ~

/Ymd%Tzu$b0tablespace perfstat;

(K,WG#swY9R li^ c3B0

1yI(gG4?bn0然后,通过UNIX/LINUX的shell变成,利用vmstat的结果来获取相应的服务器信息,并且存放到表中。木铎校园 BBS 社区8s KWNQw

木铎校园 BBS 社区%tp/@(s|H~_w pn

|7Zy2@2^#V)u0木铎校园 BBS 社区y dYqbo

关于shell编程,可能已经超出本文内容,并且诚实的说,本人并没有shell编程的经验,希望那位兄台可以完成shell编程的内容,并劳驾mail给我共享一下,谢了先!!

FHX]#SD:fN0

o ?2F u-w Od3R-m0木铎校园 BBS 社区#yMM6lo;j*qS

Y,Y MZ4ja-S0木铎校园 BBS 社区:F)X ~YJk

木铎校园 BBS 社区xc#i(y] kS t

k-C!RW0Tl/e0

5fi7~BJB2Ys0木铎校园 BBS 社区DlvO XJ$` @

!Eu/nWJ#w*w%`0附:

4E2ME np T0

Gt4h#k!X7I0LINUX上VMSTAT的帮助手册:(man vmstat的结果)

*F]7E,z'\T0

vM9wo$g5s)~o0VMSTAT(8) Linux Administrator's Manual VMSTAT(8)木铎校园 BBS 社区0W0u!v1V'`5_

M,OK$k1P:anu0NAME

3n H jN/s5M2w0oBe0木铎校园 BBS 社区ez g5bJ

vmstat - Report virtual memory statistics木铎校园 BBS 社区%I W!\2t1J} r\s\

@ oN {9IG,E0木铎校园 BBS 社区7ew pw"I8e JH jH

PpK5j'O4v]}"Z1^0SYNOPSIS

P$dZ0cG0木铎校园 BBS 社区SqSKa/g

vmstat [-n] [delay [ count]]木铎校园 BBS 社区IruM[;sLd#qu

木铎校园 BBS 社区#l7@[ K} C*b R T

vmstat[-V]木铎校园 BBS 社区4L(cc4|6b

3O^&_ Sb0

L-|g$}TxU0木铎校园 BBS 社区E9F;K"a _D}8Vp ~

DESCRIPTION

u*om0NA;W ]~1p0

5e$]"h.M&Yb5F*s2T0vmstat reports information about processes, memory, paging, block IO, traps, and CPU activity.木铎校园 BBS 社区A*{ Y ?_v-l^(Q

木铎校园 BBS 社区M'W,C!WdN*O~1L

XY,T)mpw+IK0

yf A2j[?%D7Il0The first report produced gives averages since the last reboot. Additional reports give information on a sam-

a"j`,t B0

Z.]u9fS0pling period of length delay. The process and memory reports are instantaneous in either case.木铎校园 BBS 社区e8yv2Q`K n

木铎校园 BBS 社区b:i9M*K't)K2E

J_)a'q6YB+a!pYF/I0木铎校园 BBS 社区/u-T,k[Q;g.is!U'K;Uz

Options

&T*Er Z:Z0

}-R's5KH Ror0The -n switch causes the header to be displayed only once rather than periodically.

_6G,JFCN0i0木铎校园 BBS 社区}4\J7I)FPm

x6T5?OQc0木铎校园 BBS 社区h9c aR'TJD

delay is the delay between updates in seconds. If no delay is specified, only one report is printed with the木铎校园 BBS 社区-{Oi9J2w i#j;F

/JK+z(v @/E\@%@.r _0average values since boot.

(q3k#r2VUq9?!d0

$S+n;J2i R6O~W"qf N0

H+D II*j;QAScm0木铎校园 BBS 社区5n9M2Ft1F)r;O'Dp2S

count is the number of updates. If no count is specified and delay is defined, count defaults to infinity.

)|2H3D'i$T~ v$^0

\*~%]"Q6y `Z0木铎校园 BBS 社区juLPl M+M _

(C AjDNX}#fTgs0@0The -V switch results in displaying version information.

4\j?.hcm1T-|r0

J VrO|+A0木铎校园 BBS 社区&q:vy7ZP%{p K.g

木铎校园 BBS 社区\8mf!^;j u8^_

FIELD DESCRIPTIONS木铎校园 BBS 社区].@M`bBSm3[

木铎校园 BBS 社区.u!A!w3EU

Procs

k{c?%d c0

X,Pni{~0r: The number of processes waiting for run time.木铎校园 BBS 社区 e/u&[0ed_

木铎校园 BBS 社区V|w(wF5v6DT

b: The number of processes in uninterruptable sleep.木铎校园 BBS 社区|F,PHu/Co+`

木铎校园 BBS 社区c0]2k cR:h @n

w: The number of processes swapped out but otherwise runnable. This木铎校园 BBS 社区.g-k&El ?3{ W

1^C_{L+Fj9R(P E0field is calculated, but Linux never desperation swaps.

u)l^{T*I0

\"G[O#^ E;iV Nd0木铎校园 BBS 社区4u"A6]-]*z4O

&_'F0~ j@i^r0Memory

a0g2n OJmv9W O0

{@c/H'\+i)S7f i"^\9l0swpd: the amount of virtual memory used (kB).木铎校园 BBS 社区h5hz2EQ

木铎校园 BBS 社区Tw'w y9{N @

free: the amount of idle memory (kB).木铎校园 BBS 社区 UiT5i'J:g/l

木铎校园 BBS 社区+[)^pkG

buff: the amount of memory used as buffers (kB).木铎校园 BBS 社区r;[2g9O1pxpd(km{R

木铎校园 BBS 社区1|L%I:k"F%We8p

木铎校园 BBS 社区}1m^ x!z]

木铎校园 BBS 社区Whw%g4c2u{8w^

Swap

zB1sqg0木铎校园 BBS 社区&J|2k d{ @k.P

si: Amount of memory swapped in from disk (kB/s).木铎校园 BBS 社区A m{ t`\V.r

1@ I,}3v,l!q&Xs'c0so: Amount of memory swapped to disk (kB/s).木铎校园 BBS 社区 Q2? aD,}J&D i

6t{/^1~8lo |L6O0

v'R,]9tW(oS;_0木铎校园 BBS 社区"JY)Y"T2k

IO

AR4w;g0@0

9tz$B#pU0bi: Blocks sent to a block device (blocks/s).

;cB$kxL1II;H y;V A-](D0木铎校园 BBS 社区wY"uYc:ggo

bo: Blocks received from a block device (blocks/s).

/usM-wY'r[^EGY y0

&w Z~"eUS\"U]0

k#n-[ g#B1l!` i%w0

!r)yG'[ e+a0System木铎校园 BBS 社区9U V{C4ZLYW

.d Nivk k0in: The number of interrupts per second, including the clock.木铎校园 BBS 社区%f.bx!R8Hy%j/zY$a1qo

{br \6A,z0cs: The number of context switches per second.木铎校园 BBS 社区/f,K&@|&R*GlA,r @

木铎校园 BBS 社区1q(}9jtZ;cw/B%O

: CPU

Z g$U/z3EMk0木铎校园 BBS 社区|"~sx8XD&E

These are percentages of total CPU time.

x.o}r;|G n;^\K0木铎校园 BBS 社区b,f X4c{7U3C+@)c

us: user time

\u8~0r#Et1yz!C k0木铎校园 BBS 社区NM6F.{B x

sy: system time

L1a,e#iS+s q)T0

0Wz+_} G1D9w0id: idle time

6Nf6cQ rsu3u E0木铎校园 BBS 社区*^6e:LGR\ V??

0[4s r#y.ymw9{0木铎校园 BBS 社区\7}KwJ7o Yf

NOTES

(G~Jjt"e"|0木铎校园 BBS 社区(d1M9O9a(T3T;h$zS| M

vmstat does not require special permissions.

Yg@.RI)[0

MH{b(BP0木铎校园 BBS 社区%W8s,YQtNY

木铎校园 BBS 社区cm5a%Ql7d6\A

These reports are intended to help identify system bottlenecks. Linux vmstat does not count itself as a running process.木铎校园 BBS 社区4x,j I(J#R-T

木铎校园 BBS 社区%q p[mhlht*g

!h,M(A!H_W6{{0

#{ l_ W9o m0All linux blocks are currently 1k, except for CD-ROM blocks which are 2k.

G)hb"`5b:SrH0木铎校园 BBS 社区%cN9H^a\4A

木铎校园 BBS 社区J^:v[#AAX

(s&j_2ae-Z*J!k0XZ0FILES

i2Aaey@-j0

{r*Fy8p.b1@0/proc/meminfo

x`-h8t$O X^#V(P v0木铎校园 BBS 社区/UH6FYCd

/proc/stat木铎校园 BBS 社区!\ i f w h#cx&m5P

7R?bbEb0/proc/*/stat

8T2?)I&w }q[u0木铎校园 BBS 社区.`P;R,i L

W-O3]Jeh.nq"I1n0木铎校园 BBS 社区]{j5W#{ZdVnH

SEE ALSO木铎校园 BBS 社区]cA;E,ja&W

木铎校园 BBS 社区or M E(W/n gB

ps(1), top(1), free(1)木铎校园 BBS 社区e I;L;Qn!@9i

木铎校园 BBS 社区 U)P:??$^%\

wdC&TQP1B\0木铎校园 BBS 社区6{`7B7E(|9L q"I

BUGS

g"kd~ G{"e.{ za0

-Xa.}$T!]s0Does not tabulate the block io per device or count the number of system calls.木铎校园 BBS 社区3vefS$Er N9u

木铎校园 BBS 社区M}&W0W"_6|T

木铎校园 BBS 社区 P4R cEEb)U V7te

木铎校园 BBS 社区*R,J QB#E:c%iAY

AUTHOR木铎校园 BBS 社区7FupSW0n

p7br:z#SKx~`0Written by Henry Ware <al172@yfn.ysu.edu>.

{5}5n6M ?'a,q5N~0

m6u+s%u(_n EE0木铎校园 BBS 社区3T!wFIw+qo2P

木铎校园 BBS 社区s*|T1EjSj[

Throatwobbler Ginkgo Labs 27 July 1994 VMSTAT(8)木铎校园 BBS 社区!C0w;o`Bxit2[5g


TAG: Vmstat iostat

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

关于作者