报告中央处理器(CPU)统计信息和整个系统、适配器、tty 设备、磁盘和 CD-ROM 的输入/输出统计信息。51Testing软件测试网%gkrc8qV"l1R3r
语法51Testing软件测试网y8N mn:m(Gf2}z
iostat[-s] [-a] [-d|-t] [-T][-m][PhysicalVolume... ] [Interval[Count] ]51Testing软件测试网+\/{XTr
描述/U8{(y_U0
iostat命令用来监视系统输入/输出设备负载,这通过观察与它们的平均传送速率相关的物理磁盘的活动时间来实现。iostat命令生成的报告可以用来更改系统配置来更好地平衡物理磁盘和适配器之间的输入/输出负载。51Testing软件测试网.S3N:L0q.rt
由iostat命令生成的第一份报告提供了关于自从系统被引导后的时间统计信息。后继的每一份报告都包含自上一次报告以来的时间。每次运行iostat命令时,就报告所有的统计信息。报告由紧接着一行tty和CPU统计信息的tty和CPU头行组成。在多处理器系统上,CPU统计信息是系统范围计算的,是所有处理器的平均值。5h({8z(JT0
如果指定-s标志,则显示系统头行,随后是一行整个系统的统计信息。系统的主机名被打印在系统头上。!iKei^6\vHl5_x0
如果指定-a标志,就会显示一个适配器头行,随后是一行适配器的统计信息。这后面将回有一个磁盘头行和连接到适配器的所有磁盘/CD-ROM的统计信息。为所有与系统连接的磁盘适配器生成这种报告。?+u;qA~U'S0
显示一个磁盘头行,随后是一行配置的磁盘的统计信息。如果指定PhysicalVolume参数,则只显示那些指定的名称。|
]*A1wQe#Og0
如果指定PhysicalVolume参数,那么可以指定一个或者更多的字母或者字母数字的物理卷。如果指定PhysicalVolume参数,就会显示tty和CPU报告并且磁盘报告包含指定驱动器的统计信息。如果没有发现指定逻辑驱动器名,那么报告将列出指定的名称并且显示没有找到驱动器的消息。如果没有指定逻辑驱动器名,报告则包含所有已配置的磁盘和CD-ROM的统计信息。如果系统上没有配置驱动器,则不生成磁盘报告。PhysicalVolume参数中的第一个字符不能为数字型。W$o(kM
R'A0
Interval参数指定了在每个报告之间的以秒计算的时间量。第一份报告包含了自系统启动(引导)以来的时间统计信息。每一份后继报告都包含在和前一份报告的时间间隔之间收集的统计信息。Count参数可被指定来连接Interval参数。如果指定了Count参数,它的记数值就确定在Interval秒间生成的报告数。如果指定了Interval参数但没有Count参数,iostat命令就会不断生成报告。51Testing软件测试网*A.tJbBG%ld
h
iostat命令用来确定一个物理卷是否正在形成一个性能瓶颈,以及是否有可能改善这种情况。物理卷的%使用率字段表明了文件活动在驱动器中分布多均匀。物理卷的高%使用率是表明也许存在这个资源的争用很好的征兆。由于CPU使用率的统计信息同样适用于iostat报告,CPU在I/O等待队列中的时间的百分比可以在同一时间确定。如果I/O等待时间是有效数字并且磁盘使用率不是在卷上均匀分布,那么就要考虑在驱动器上分布数据。o-b ySuk3@+`6zG0
注:一些系统资源被消耗是为了为iostat命令维护磁盘I/O的历史记录。使用子例程,或者系统管理接口工具(SMIT)来停止历史记录账户。51Testing软件测试网1xy9dt$\B
报告
iostat命令生成四种类型的报告,tty和CPU使用率报告、磁盘使用率报告、系统吞吐量报告和适配器吞吐量报告。%Y4A1Ig
K0
tty和CPU使用率报告
由iostat命令生成的第一份报告是tty和CPU使用率报告。对于多处理器系统,CPU值是所有处理器的总平均。同时,I/O等待状态是系统级定义的,而不是每个处理器。报告有以下格式:51Testing软件测试网$V1x@}`:Sc
Q
9zYB!l;hB0栏!^(^Xt2J;};c0描述Gj&^)zD0z4S0tind]~,XYJ8N.sdy0显示了系统为所有tty读取的字符总数。51Testing软件测试网1\4d
r@6T5UIo4I
tout51Testing软件测试网WC%Fd{t显示了系统为所有tty写入的字符总数。51Testing软件测试网9mW2_CkcK~
% user51Testing软件测试网7oo+e^/CP显示了在用户级(应用程序)执行时产生的CPU使用率百分比。51Testing软件测试网|kh#B,z2[;@Ev
% sys51Testing软件测试网2Fw-DiWY显示了在系统级(内核)执行时产生的CPU使用率百分比。UA\E[
t1wq0
% idle1UEv
G/OV0显示了在CPU空闲并且系统没有未完成的磁盘I/O请求时的时间百分比。{A@h$_xeNeS0
% iowait51Testing软件测试网-ael7Nz5Z,Oq:E显示了CPU空闲期间系统有未完成的磁盘I/O请求时的时间百分比。51Testing软件测试网9^l e\@*|H5s1X;Zw?i*h y@5q0
每过一定时间间隔,内核就更新这条信息(一般每秒六十次)。tty报告提供了从系统中所有终端的收到的每秒字符总数,以及和每秒输出到系统所有终端的字符的总数。51Testing软件测试网8k?&l`gP?ax$}h
用来计算CPU磁盘I/O等待时间的方法
V4.3.3和后来的版本包含用来估算CPU在磁盘I/O(wio时间)等待上的所花时间的百分比的增强方法。用在AIX 4.3.2和操作系统的早期版本上的方法在一定条件下,能够给出SMP上的wio时间的一个放大的视图。wio时间是根据命令sar(%wio)、vmstat(wa)和iostat(% iowait)报告出来的。T8xF5}:Ix/n0
在AIX 4.3.2中和早期版本中使用的方法如下:在每个处理器(每处理器一秒一百次)的每个时钟中断上,将确定四个类别(usr/sys/wio/idle)中的哪一个放置在最后的10ms内。如果在时钟中断的时刻CPU以usr模式中处于忙状态,那么usr获得这个时间计点并归于此类。如果在时钟中断时刻CPU以内核模式中处于忙状态,那么sys类别将获得该计时点。如果CPU不处于忙状态,将检查是否在进行任何磁盘I/O。如果在进行任何磁盘I/O,则wio类别将增加。如果磁盘在进行I/O操作并且CPU不忙,那么idle类别将获取计时点。wio时间的放大视图是由于所有空闲CPU被归为wio而不管在I/O上等待的线程数所导致。例如,仅有一个线程执行I/O的系统可以报告超过90%的wio时间而不管其CPU数。NKK2U
d1Q"O*Qf0
在AIX 4.3.3中和后继版本中使用的方法如下:如果在那个CPU上启动一个未完成的的I/O,那么操作系统V4.3.3中的更改仅把一个空闲CPU标为wio。当只有少数线程正在执行I/O否则系统就空闲的情况下,这种方法可以报告更少的wio时间。例如,一个有四个CPU且只有一个线程执行I/O的系统将报告一个最大值是25%的wio时间。一个有12个CPU且仅有一个线程执行I/O的系统将报告一个最大值为8%的wio时间。NFS客户机通过VMM读/写,并且为了完成一个I/O而在vmm等待中用的时间现在将被报告为I/O等待时间。51Testing软件测试网EOb
i(sK
km {G
磁盘使用率报告
由iostat命令生成的第二个报告是磁盘使用率报告。磁盘报告提供了在每个物理磁盘基础上的统计信息。这个报告有以下类似的格式:51Testing软件测试网#E5m_"A)D+zY_51Testing软件测试网v(||U7`ibg2wa
% tm_act51Testing软件测试网:Yc"a)k4f`Ohhf QG表示物理磁盘处于活动状态的时间百分比(驱动器的带宽使用率)。51Testing软件测试网cC'`y cWJ:L
KbpsY
\4D l v%VsZf.N0表示以KB每秒为单位的传输(读或写)到驱动器的数据量。51Testing软件测试网'}y;{8zmt9F1M
tps*}5a2lpk(@0表示每秒钟输出到物理磁盘的传输次数。一次传输就是一个对物理磁盘的I/O请求。多个逻辑请求可被并为对磁盘的一个单一I/O请求。传输具有中等的大小。nP:^H0pKc,AF0
Kb_read?6ko(eo_,g(L0读取的KB总数。k|-t1|
N5I"E0
Kb_wrtn51Testing软件测试网[v+K;VCTK:y4cK写入的KB总数。51Testing软件测试网M)w^/o L#?:t]51Testing软件测试网Ms[*l1`/d j
CD-ROM设备的统计信息也要报告。(K WW8Lz'U3n0
对于配置有大量磁盘的大型系统配置,当iostat没有执行时,系统可以设置为避免收集物理硬盘的输入/输出数据。如果系统用上述的方式配置,那么第一个磁盘报告将显示消息引导不可用后的磁盘历史记录而不是磁盘统计信息。由iostat命令生成的后继时间间隔报告包含在报告时间间隔期间收集的磁盘统计信息。引导后的任何tty和CPU都不会影响。如果一个系统管理命令用来重新保留磁盘统计信息,那么第一个iostat命令报告会显示从启用磁盘输入/输出统计信息那一刻时间间隔起点起的行为。51Testing软件测试网'h/} L3cwfr