Solaris系统进程的查看和管理

上一篇 / 下一篇  2009-04-08 22:40:22 / 个人分类:Lunix 点滴

  • 文件版本: V1.0
  • 开发商: 本站原创
  • 文件来源: 本地
  • 界面语言: 简体中文
  • 授权方式: 免费
  • 运行平台: Win9X/Win2000/WinXP
1、什么是进程?51Testing软件测试网D]B0{)s+d!S:w7q7M
进程:可并发执行的程序在一定数据集合上的运行过程。进程即是资源分配的基本单位,也是调度和分派的基本单位。
5~*WT4R_O02、UNIX操作系统进程调度算法:
{g9w,z/N0多级反馈调度队列算法。51Testing软件测试网:i"\ W5`Q\K&ze']
3、进程状态:创建、初始、就绪(活动、静止)、执行、阻塞(活动、静止)、结束。
2Tn do2|o04、进程监控命令:
6jnqTb+G1n0ps 命令和进程工具/usr/proc/bin下的工具级。
(EDc Q1ghm y0可以将ps和grep命令组合使用来搜索特定的信息。
0X}%r:T[:u e Q05、/usr/proc/bin的命令介绍:51Testing软件测试网V5Y3Z$}8[e
pstop 停止进程51Testing软件测试网jJ#u6ux\
prun pid 重新启动进程51Testing软件测试网B"QJ8? m:u"X
ptime pid 使用微状态计算进程时间51Testing软件测试网 Q"t$E mH z
pwait pid 等待指定的进程终止.51Testing软件测试网 F~\1l2Ac&p
pcred pid 显示可信度
1dc~r*| jm-h/g}.{0pfiles pid 显示已打开文件的fstat 和fcntl 信息51Testing软件测试网 M#n BbN j
pflags pid 显示每个lwp 的/proc 跟踪标志,等待和持有信号量以及其他
D#s @_*Gj q0态信息51Testing软件测试网%R%D_2aA&y!`o.j8V*c
pldd pid 显示链接到每个进程的动态链接库
l \'^7vgRK ^/L }0pmap pid 显示地址映射空间
b2~ O*L"I(neZ0psig pid 显示信号操作
6`P u{gNa0pstack pid 显示每个lwp 的十六进制与符号堆跟踪
v ]!H%glxR0X ty%?2Y0ptree pid 显示包含指定PID 的进程树51Testing软件测试网Uc-Z\0zW
pwdx oid 显示当前工作目录51Testing软件测试网aqm AY!\m3v+I
6、ps命令格式:51Testing软件测试网U5Gwl~}S
ps [ -aAdeflcjLPy ] [ -o format ] [ -t termlist ] [ -u userlist ] [ -U userlist ] [ -G grouplist ] [ -p proclist ] [ -g pgrplist ] [ -s sidlist ]
dr!`2xP07、常用的参数:
!d%_0ZG!_ H$w|&F.P0-e 输出所有进程报告51Testing软件测试网Z\Z-l,JP'Y0ABt
-f 在第一栏显示进程所有者的名字(不是UID)。该选项关闭-l、–t、–s 和–r 选项,打开-a 选项。
-~ A9n k1GzH+G dr0-l 产生一个长的输出报告,只是不包含STIME 字段
4x+Nc1^,][zpZL08、ps -el的相关输出参数解释:
2gZ M4P2A9BgN.G0bash-2.05$ ps -el51Testing软件测试网@@:P!_%tCt b@)_P~
F S UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD
;D&U$@d hg019 T 0 0 0 0 0 SY ? 0 ? 0:16 sched
-r/frF {_h08 S 0 1 0 0 40 20 ? 151 ? ? 0:00 init51Testing软件测试网n1no d3Pi
19 S 0 2 0 0 0 SY ? 0 ? ? 0:00 pageout51Testing软件测试网"Yyg)}iSVU
19 S 0 3 0 0 0 SY ? 0 ? ? 0:30 fsflush
(zO"y2z9fq)J08 S 0 377 1 0 40 20 ? 223 ? ? 0:00 sac51Testing软件测试网K&H;Wr _&tVK,KR V-l(A
8 S 0 378 1 0 40 20 ? 224 ? console 0:00 ttymon
dt$^"O1C6Jp4nB08 S 0 131 1 0 40 20 ? 289 ? ? 0:00 rpcbind51Testing软件测试网#SX^D\2q1D:h%r
F 十六进制标志,它们加起来表示进程的当前状态。如下所述:51Testing软件测试网 x_,xJxzFgO
00 进程终止,而且它们在进程表中的空间已释放。51Testing软件测试网%_7Ct lSUKM
01 系统进程,长驻内存
"Z$S1fk y0U002 进程被父进程跟踪51Testing软件测试网3kF{ h!i5@
04 进程被父进程跟踪而且已被停止
7Fcrma008 该进程无法被信号量唤醒
|?*IahP9f*\010 该进程当前在内存中,而且被锁定直到一个事件完成
k2l9{yB'r uO020 进程不能被交换出
(VCd3[t8B h2H0S 进程当前状态,由以下字母之一显示:
)t$aw1V!pg#E0O 当前正在处理器上运行51Testing软件测试网\ b/sv K+?hl
S 睡眠;等待I/O事件完成51Testing软件测试网@:Vw-PsN
R 运行结束51Testing软件测试网j Iw}uKZ!|rG
I 空闲;进程被创建
Vq u'd)i7fV^0Z 僵死。进程已终止
%QR!xy%_&Of0T 由于父进程跟踪而停止
0v ?CE e.[T0X 等待更多的内存51Testing软件测试网o8C$H'RrmZy.f
UID 进程所有者的用户ID
i(NKs'o;i/y)]0PID 进程ID51Testing软件测试网t#q(ZF"?(d/U3xUY J
PPID 父进程ID
C1F%[Q+?N~^V t0C 进程的CPU使用情况(即进程占CPU时间的百分比)
2TQNBt#D OQ0PRI 进程优先权方案。较大的数表示较低的优先权
CRj/FpmQ$P0NI 进程的nice值,该值与优先权方案相关联。使一个进程“nicer”意指降低该进程的优先权,以使它不会用尽CPU的时间51Testing软件测试网S,saSa-_'p@
SZ 进程请求的虚拟内存量。这是该系统对内存需求的一个好的指标。
8is!d(R3j(To I0TTY 启动进程(或者父进程)的终端。带问号的进程无控制终端(通常为系统进程)51Testing软件测试网@G0FAv}
TIME 自进程启动以来占CPU时间总量
4c @*izCY|K0COMD 产生进程的命令51Testing软件测试网t"@t*W.Xl~C
9、使用ps报告。51Testing软件测试网X2J{H5]`Xn:A#`u
查找属于一个用户的许多相同的工作。Kill命令终止进程。 ps -U username
O+sZ3Fj0查找TIME字段中占用了很多CPU时间的进程。这样的进程可能在死循环。ps -e
o*YFCP;K A6gWo Z0查找C字段,找出不重要但占用了大量CPU时间的进程。如果该进程获取过多内存,删除该进程。如果许多进程占用了大量内存,则系统可能需要增加内存。ps -el51Testing软件测试网 kT(_0Za
注意使用越来越多CPU时间的失控进程。可以通过使用-f选项查看进程启动时间(STIME)以及通过查看TIME字段中的CPU时间总量来检测失控进程。 ps -f
0Mx M xF;u010、删除进程。
'Z[2p+N%\4T J0h0在正常途径无法结束时才使用删除命令。51Testing软件测试网GH!T B K.zt
#kill - signal pid51Testing软件测试网pPtc%|
signal:5751Testing软件测试网3k hw v-ff
signal:
-F+d:uB;x G+`c{*|.B:Z02 中断51Testing软件测试网"?Sb/E"ud}0ju*k
3 退出
A.f@| cI,g04 非法指令51Testing软件测试网JC'sF:m__
5 跟踪中断51Testing软件测试网 z zGBzig(e5A;vu
6 Abort
%Q [%spy#twRP07 EMT指令(Emulation竞争trap)51Testing软件测试网h&hK Y'`;_
8 浮点格式的异常情况
@]2VX @09 kill(不能被捕获或忽略)
Sa'[[/D1O8S8~ wpzS010 通道错误
$g,e$i&nU Q%h011不合法的内存区段51Testing软件测试网d X3v'[X1X@
12 错误系统调用51Testing软件测试网'k%h7_ mJO/dy
13 写入不可读的连通管道51Testing软件测试网pW)]7rBt.}zy9v
14 alarm clock
d n^lQ}A} f015 软件结束信号
.x-|s c6j aMJ%~4mO016 用户定义的信号151Testing软件测试网i*pk"l#W
17用户定义的信号2
6W3lvtvT'A K|z018 子进程状态被改变51Testing软件测试网H5Ke%[Cb{y
19 电源坏掉51Testing软件测试网 c Q Gr)L9`%t0}8k_
20窗口(Window)的大小被改变51Testing软件测试网q u T6J/x
21Urgent(紧急的) Socket Condition51Testing软件测试网 d8KhtY5};P
22 Pollable(可查询的)event51Testing软件测试网 JAbg0]1x
23 停止51Testing软件测试网]%D"QP w5f
24 由用户终止
[i @M7V9P]025 继续执行51Testing软件测试网X2~5k/~(z(H n[ H
26 停止终端输入
,F(y{d(Z-A"ZPA[027 停止终端输出
e g e&qtF| u*_l028 virtual Timer expired51Testing软件测试网9web x\7|b
29 Profiling time expired
Z4ET Qb[H030 超过CPU时间
_u8c Rp(\031 超过文件大小限制
a|U o){|032 Socket I/O possible51Testing软件测试网q-`^0Xr"x"_
有时即使用kill命令,但进程仍未被删除。最有可能的三种情况:51Testing软件测试网)}-BXSzk
进程在退出前等待设备完成操作。
'[0]7@#V^bg m0进程在等待由于NFS故障而导致的无法使用的资源。要删除此类进程,输入kill -quit PID51Testing软件测试网s h\#f Q2|[!B0u6h
进程为僵死进程,在ps报告的defunct的消息中显示。僵死进程是释放了所有资源,但未接受到父进程确认的进程。只有收到确认才删除进程在进程表中的入口。下一次引导时僵死进程会被清除。僵死进程不影响系统性能,不需要删除。
w5H3tNV/c011、优先权控制命51Testing软件测试网Jgkx[N7V%RD P
使用priocntl命令可以:
\_ J vz3EH0显示或设置指定进程的调度参51Testing软件测试网.^qC1X.hw4`
显示系统调度程序的当前配置信息51Testing软件测试网kf3J4Xx zM&Q$o
执行带有指定调度参数的命令51Testing软件测试网TqaG C!zm}
每个进程都有不同的级,每级分配有各自不同的调度策略。
i.]n/I|m:j0系统可能配置的级包括:51Testing软件测试网[ e@-NB,y A
系统(SYS)51Testing软件测试网[z5Z.lN4\}i1P D:M
交互(IA)
.@| W.{ `[$V+p_0实时(RT)
2D|m"N+L ? v3eI0分式共享(TS)
n8nX$}olc0对于分式共享级,用户提供的优先权范围为:-20~+20。一个
j9X!SiZ&X$_0分时共享进程的优先权(用户模式优先权)是从父进程继承
&rN2fZ2W"@R0而来。系统在分时调度表中查找用户模式优先权,加入任何51Testing软件测试网nyd`,_Aw/C6Z*e
nice值或这者priocntl优先权值(用户提供),保证创建的全51Testing软件测试网Ew ?:d%M.cJ(E-L
局优先权在0~59之间。51Testing软件测试网g*S3G,|,U.w b2js*[5Q
在默认配置中,一个可运行的实时进程在任何其它进程之前运行。实时进程使用不当会导致系统性能急剧下降。
4^1O)xt%y01. 显示进程级的基本信息(进程级或系统调度参数):
ag5`*m nK$pO5o0输入priocntl -l并回车51Testing软件测试网ye/QtW[d
2. 显示进程的全局优先级
;NNi$?:IS0使用ps -ecl命令显示进程的全局优先权。全局优先权在PRI栏列出
SS1Ou}9UM6r k-Q03、指定进程的优先级:51Testing软件测试网p Oo,y(NQC2c4c*F
输入priocntl -e -c class -m user -limit -p priority command - name回车51Testing软件测试网 P8k_b \!hC S
-e 执行命令
_w-v$^{u0-c 指定级(默认选项是TS(分时共享)或RI(实时)51Testing软件测试网3Z b(`c8T/dG,J
-m 用户限制选项,指定-p选项提升或降低优先权的最大量。
0H0]Wp/T'BgPs0-p 允许指定用户提供的优先权,范围为-20~+20。51Testing软件测试网Qo,Y$L Z Rc-qse
4.更改分时共享进程的调度参数51Testing软件测试网 H P4qey#Mx Q
依照以下步骤更改分时共享进程的调度参数:
gP,x'Q9Y2g`'d&W`01)成为超级用户。
f^T ]/]P-P02)输入priocntl -s -m user -limit [-p priority] -i id type id -list回车。51Testing软件测试网Cm^$KUP
-s允许设置用户优先权范围的上限51Testing软件测试网(tl!qS%s@H
-m 用户限制选项,指定-p选项提升或降低优先权的最大量。51Testing软件测试网)ki5N'yv)J,`D\
-p优先权命令名选项,允许指定优先权。51Testing软件测试网j#\-z8Y-DJ;x J
-I id -type和id -list选项使用id -type和id -list的组合标识进程, id -
7\2O{%U0Ju~I0type指定id类型,如PID或UID。
?1w"tz:eb({#DNm03)输入ps -ecl|grep id -list回车。51Testing软件测试网aV*GuPH|2Q$|
4)检查PRI栏的输出,验证已经成功地更改了进程状态。51Testing软件测试网E Nm/ROi4l"e/M|0S
% priocntl -s -c RT -t 500 -p 20 myprog51Testing软件测试网Dm|[5? JT
% ps -ecl|grep myprog
p/M)V;O2Qv0t05. 更改进程51Testing软件测试网z9j4q+mA4Qc
依照以下步骤更改进程级:51Testing软件测试网.UT\iSs#_(q {
1)成为超级用户。51Testing软件测试网.r*|aecqhQ
2)输入priocntl -s -c class -i id type id -list回车。
6f G t5C0v_0-s允许设置用户优先权范围的上限并更改优先权
n E f:kywu.V9R0-c 指定想更改的进程级为TS(分时共享)级或RI(实时)级
!A:t,fSe0-I id -type和id -list选项使用id -type和id -list的组合标识进程, id -type指定id51Testing软件测试网8k6n9jKf;y-{1z
类型,如PID或UID。
x1_0Vq2fq ru+{03)输入ps -ecl|grep id -list回车。
)j:e H`9a04)检查PRI栏的输出,验证已经成功地更改了进程状态。51Testing软件测试网u3i[ @ e#W-b
注意:必须是超级用户或者在实时shell中操作,更改进程级为非实时级或者实时级。51Testing软件测试网 @u5V.UVqJN0Q+^+G9M
6、更改进程优先级
'X1P:^b2Kb{,]+P0使用nice命令可以提高或降低一个命令或进程的优先权。
"m W2hrQOHqr0不带参数使用该命令则默认nice值增4个单位,使进程优先
Pm MD^C"H#J%py0权降低。51Testing软件测试网 j4E8RX)Zk7a-I S0H
注意:必须是超级用户才能。
v*oc2]:Dm&e B o0/usr/bin/nice command -name(默认,进程的优先权降低4个单位)51Testing软件测试网3z{SoN!j3gg#Q
/usr/bin/nice +10 command -name(进程的优先权降低10个单位)
T2A"r:C#sZ3v{*_V0/usr/bin/nice -10 command -name(进程的优先权增加10个单位)51Testing软件测试网dhhC$p6xBw
/usr/bin/nice - -10 command -name(nice 值减少10个单位,提高一个命令的优先权)

TAG:

 

评分:0

我来说两句

Open Toolbar