如何检查进程间通信 (sar -m)
使用 sar -m 命令可报告进程间通信活动。
$ sar -m
00:00:00 msg/s sema/s
01:00:00 0.00 0.00
除非运行使用消息或信号的应用程序,否则这些数字通常都为零 (0.00)。
以下列表介绍了 -m 选项的输出。
msg/s
每秒的消息操作(发送和接收)数
sema/s
每秒的信号操作数
示例 13–10 检查进程间通信 (sar -m)
以下缩写示例显示 sar -m 命令的输出。
$ sar -m
SunOS balmyday 5.10 s10_51 sun4u 03/18/2004
00:00:00 msg/s sema/s
01:00:00 0.00 0.00
02:00:02 0.00 0.00
03:00:00 0.00 0.00
04:00:00 0.00 0.00
05:00:01 0.00 0.00
06:00:00 0.00 0.00
Average 0.00 0.00
Procedure如何检查页入活动 (sar -p)
使用 sar -p 命令可报告页入活动,其中包括保护错误和转换错误。
$ sar -p
00:00:00 atch/s pgin/s ppgin/s pflt/s vflt/s slock/s
01:00:00 0.07 0.00 0.00 0.21 0.39 0.00
示例 13–11 检查页入活动 (sar -p)
以下示例显示 sar -p 命令的输出。
$ sar -p
SunOS balmyday 5.10 s10_51 sun4u 03/18/2004
00:00:04 atch/s pgin/s ppgin/s pflt/s vflt/s slock/s
01:00:00 0.09 0.00 0.00 0.78 2.02 0.00
02:00:01 0.08 0.00 0.00 0.78 2.02 0.00
03:00:00 0.09 0.00 0.00 0.81 2.07 0.00
04:00:00 0.11 0.01 0.01 0.86 2.18 0.00
05:00:00 0.08 0.00 0.00 0.78 2.02 0.00
06:00:00 0.09 0.00 0.00 0.78 2.02 0.00
07:00:00 0.08 0.00 0.00 0.78 2.02 0.00
08:00:00 0.09 0.00 0.00 0.78 2.02 0.00
08:20:00 0.11 0.00 0.00 0.87 2.24 0.00
08:40:01 0.13 0.00 0.00 0.90 2.29 0.00
09:00:00 0.11 0.00 0.00 0.88 2.24 0.00
09:20:00 0.10 0.00 0.00 0.88 2.24 0.00
09:40:00 2.91 1.80 2.38 4.61 17.62 0.00
10:00:00 2.74 2.03 3.08 8.17 21.76 0.00
10:20:00 0.16 0.04 0.04 1.92 2.96 0.00
10:40:00 2.10 2.50 3.42 6.62 16.51 0.00
11:00:00 3.36 0.87 1.35 3.92 15.12 0.00
Average 0.42 0.22 0.31 1.45 4.00 0.00
查看本栏目更多精彩内容:http://www.bianceng.cnhttp://www.bianceng.cn/OS/unix/
下表介绍了通过 -p 选项报告的统计信息。
字段名 | 说明 |
---|---|
atch/s | 每秒通过回收当前在内存中的页来满足的页面错误数(每秒附加数)。例如从可用列表中回收无效的页,以及共享其他进程当前正在使用的文本页。例如,两个或多个进程同时访问同一程序文本。 |
pgin/s | 文件系统每秒接收页入请求的次数。 |
ppgin/s | 每秒调进的页数。单个页入请求(例如软件锁定请求,请参见 slock/s)或块大小很大时可能涉及多个页的调进。 |
pflt/s | 因保护错误引起的页面错误数。保护错误实例表明非法访问页面和“写复制”。通常,此数目主要包含“写复制”。 |
vflt/s | 每秒的地址转换页面错误数。这些错误称为有效性错误。当给定虚拟地址的有效进程表项不存在时,会发生有效性错误。 |
slock/s | 每秒内由要求物理 I/O 的软件锁定请求引起的错误数。例如,从磁盘向内存传输数据时,就会出现软件锁定请求。系统锁定了要接收数据的页,因此其他进程无法请求和使用该页。 |
如何检查队列活动 (sar -q)
使用 sar -q 命令可报告以下信息:
队列被占用时的平均队列长度。
队列处于占用状态的时间百分比。
$ sar -q
00:00:00 runq-sz %runocc swpq-sz %swpocc
以下列表介绍了 -q 选项的输出。
runq-sz
内存中等待 CPU 以便运行的内核线程数。通常,此值应小于 2。如果此值持续偏高,则表明系统可能计算密集 (CPU-bound)。
%runocc
占用分发队列的时间百分比。
swpq-sz
交换 sar 命令的进程队列。
%swpocc
交换 sar 命令的进程队列。
示例 13–12 检查队列活动
以下示例显示 sar -q 命令的输出。如果 %runocc 值较大(大于 90%)并且 runq-sz 值大于 2,则表明 CPU 负载较大,并且响应变慢。在此情况下,可能需要提供附加的 CPU 容量,才能获得可接受的系统响应速度。
# sar -q
SunOS system2 5.10 Generic_142909-13 sun4u 06/28/2010
00:00:00 runq-sz %runocc swpq-sz %swpocc
01:00:00 1.0 7 0.0 0
02:00:00 1.0 7 0.0 0
03:00:00 1.0 7 0.0 0
04:00:00 1.0 7 0.0 0
05:00:00 1.0 6 0.0 0
06:00:00 1.0 7 0.0 0
Average 1.0 7 0.0 0