Solaris进程的查看和管理
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Solaris进程的查看和管理
/usr/proc/bin的命令介绍:
pstop 停止进程
prun pid 重新启动进程
ptime pid 使用微状态计算进程时间
pwait pid 等待指定的进程终止.
pcred pid 显示可信度
pfiles pid 显示已打开文件的fstat 和fcntl 信息
pflags pid 显示每个lwp 的/proc 跟踪标志,等待和持有信号量以及其他状
态信息
pldd pid 显示链接到每个进程的动态链接库
pmap pid 显示地址映射空间
psig pid 显示信号操作
pstack pid 显示每个lwp 的十六进制与符号堆跟踪
ptree pid 显示包含指定PID 的进程树
pwdx oid 显示当前工作目录
6、ps命令格式:
ps [ -aAdeflcjLPy ] [ -o format ] [ -t termlist ] [ -u userlist ] [ -U userlist ] [ -G grouplist ] [ -p proclist ] [ -g pgrplist ] [ -s sidlist ]
7、常用的参数:
-e 输出所有进程报告
-f 在第一栏显示进程所有者的名字(不是UID)。该选项关闭-l、–t、–s 和–r 选项,打开-a 选项。
-l 产生一个长的输出报告,只是不包含STIME 字段
8、ps -el的相关输出参数解释:
bash-2.05$ ps -el
F S UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD
19 T 0 0 0 0 0 SY ? 0 ? 0:16 sched
8 S 0 1 0 0 40 20 ? 151 ? ? 0:00 init
19 S 0 2 0 0 0 SY ? 0 ? ? 0:00 pageout
19 S 0 3 0 0 0 SY ? 0 ? ? 0:30 fsflush
8 S 0 377 1 0 40 20 ? 223 ? ? 0:00 sac
8 S 0 378 1 0 40 20 ? 224 ? console 0:00 ttymon
8 S 0 131 1 0 40 20 ? 289 ? ? 0:00 rpcbind
F 十六进制标志,它们加起来表示进程的当前状态。如下所述:
00 进程终止,而且它们在进程表中的空间已释放。
01 系统进程,长驻内存
02 进程被父进程跟踪
04 进程被父进程跟踪而且已被停止
08 该进程无法被信号量唤醒
10 该进程当前在内存中,而且被锁定直到一个事件完成
20 进程不能被交换出
S 进程当前状态,由以下字母之一显示:
O 当前正在处理器上运行
S 睡眠;等待I/O事件完成
R 运行结束
I 空闲;进程被创建
Z 僵死。进程已终止
T 由于父进程跟踪而停止
X 等待更多的内存
UID 进程所有者的用户ID
PID 进程ID
PPID 父进程ID
C 进程的CPU使用情况(即进程占CPU时间的百分比)
PRI 进程优先权方案。较大的数表示较低的优先权
NI 进程的nice值,该值与优先权方案相关联。使一个进程“nicer”意指降低该进程的优先权,以使它不会用尽CPU的时间
SZ 进程请求的虚拟内存量。这是该系统对内存需求的一个好的指标。
TTY 启动进程(或者父进程)的终端。带问号的进程无控制终端(通常为系统进程)TIME 自进程启动以来占CPU时间总量
COMD 产生进程的命令
9、使用ps报告。
查找属于一个用户的许多相同的工作。Kill命令终止进程。ps -U username
查找TIME字段中占用了很多CPU时间的进程。这样的进程可能在死循环。ps -e
查找C字段,找出不重要但占用了大量CPU时间的进程。如果该进程获取过多内存,删除该进程。如果许多进程占用了大量内存,则系统可能需要增加内存。ps -el
注意使用越来越多CPU时间的失控进程。可以通过使用-f选项查看进程启动时间(STIME)以及通过查看TIME字段中的CPU时间总量来检测失控进程。ps -f
10、删除进程。
在正常途径无法结束时才使用删除命令。
#kill - signal pid
signal:57
signal:
2 中断
3 退出
4 非法指令
5 跟踪中断
6 Abort
7 EMT指令(Emulation竞争trap)
8 浮点格式的异常情况
9 kill(不能被捕获或忽略)
10 通道错误
11不合法的内存区段
12 错误系统调用
13 写入不可读的连通管道
14 alarm clock
15 软件结束信号
16 用户定义的信号1
17用户定义的信号2
18 子进程状态被改变
19 电源坏掉
20窗口(Window)的大小被改变
21Urgent(紧急的)Socket Condition
22 Pollable(可查询的)event
23 停止
24 由用户终止
25 继续执行
26 停止终端输入
27 停止终端输出
28 virtual Timer expired
29 Profiling time expired
30 超过CPU时间
31 超过文件大小限制
32 Socket I/O possible
有时即使用kill命令,但进程仍未被删除。最有可能的三种情况:
进程在退出前等待设备完成操作。
进程在等待由于NFS故障而导致的无法使用的资源。要删除此类进程,输入kill -quit PID 进程为僵死进程,在ps报告的defunct的消息中显示。僵死进程是释放了所有资源,但未接受到父进程确认的进程。只有收到确认才删除进程在进程表中的入口。下一次引导时僵死进程会被清除。僵死进程不影响系统性能,不需要删除。
11、优先权控制命