1、AIX中的进程
(1)后台进程
后台进程运行时,用户不必等待当前后台进程的结束,即可以运行下一个进程。
后台进程的运行方式:
# command &
(2)提高进程优先等级
-- nice:可增加 nice 的值,降低进程的优先级别。
# nice [-lncrement | -n lncrement]
renice:可再增加 nice 的值,以再降低进程的优先级别。
(3)终止进程
--前台进程
ctrl-c:终止当前的前台进程
kill:终止指定的前台进程
--后台进程
kill:终止指定的后台进程
(4)kill 的用法
#kill [ -Signalnumber | -Signalname ] Processes
常用:
#kill ProcessesID
# kill -9 ProcessesID
ProcessesID 为进程号,可以用 ps命令获取
(5)运行长进程
nohup:使用户的后台进程在用户退出系统时仍然运行,如果无指定 nohup 的输出信息会将保存在 nohup.out 中
# nohup command &
# nohup ls -R / &
2、ps指令
常用参数
-A 表示显示系统中所有的进程,包括进程组组长(process group leader)和核心进程
-a 表示显示系统中所有的进程,除了进程组组长和没有相关终端的进程
-d 表示显示系统中所有的进程,除了进程组组长,但包括核心进程
-e 表示显示系统中所有的进程,除了核心进程
-f 表示 显示进程的详细信息
-G grouplist 显示grouplist列表中包含的所有进程组中的进程
-g 同-G grouplist
-k 显示核心进程
-l 以长格式显示进程信息,输出的内容比-f参数输出的内容多
-m 显示进程中的线程信息
-o format 按format 指定的格式显示进程信息
-P Plist显示由Plist指定进程号的进程信息
-t TList 显示由Tlist指定终端上的进程信息
-U Ulist 显示由Ulist指定用户名或用户标识号的进程信息
-u Ulist 同-U Ulist
PS常用指令
|
#ps -elf
|
|
#ps aux
|
|
# ps aux|head -1; ps aux|sort -nr +2 |head -10
|
显示10个消耗cpu最多的进程
|
# ps -eakl |head -1; ps -eakl | sort -nr +5 |head -10
|
按顺序显示系统中受罚的进程
|
# ps vx |head -1; ps vx |sort +6 -nr | head -10
|
按实际内存使用的多少顺序显示系统中的前十个进程
|
# ps vx |head -1; ps vx |sort -nr +4 | head -10
|
按换入页面的多少顺序显示系统中的前十个进程
|
3、topas命令监控进程
Topas命令用于监控各种系统资源, 如cpu的使用情况, cpu事件和队列, 内存和换页空间的使用, 磁盘性能, 网络性能以及NFS统计等.
它还会报告指派给不同WLM类的进程对系统资源的消耗情况. 同时可以报告系统中最热门的进程和工作量管理器(WLM的热门类).
Topas命令将热门进程定义为那些使用大量cpu时间的进程. Topas命令没有作日志的选项, 所有信息都是实时的.
3.1 topas参数
Topas命令可以监控系统活动――memory,I/O,paging space,cpu,process。
此命令包含在perfagent.tools文件集里面。
命令使用方法:
topas [ -d number_of_monitored_hot_disks ] [ -h ]
[ -i monitoring_interval_in_seconds ]
[ -n number_of_monitored_hot_network_interfaces]
[ -p number_of_monitored_hot_processes ]
[ -w number_of_monitored_hot_WLMclasses ]
[ -c number_of_monitored_hot_CPUs ]
[ -P | -W ]
参数:
-d:指定要监控的磁盘数。如果屏幕显示的区域足够大的话,这也是磁盘可显示的最大数。当这个数值超出实际安装的磁盘数,仅仅监控并显示安装磁盘的信息。这个参数缺省值为2,如果这个值设为0,将没有磁盘被监控。
-h:显示帮助信息。
-i:设置监控时间的间隔(秒),默认为2秒。
-n:设置被监控的网络接口数。这也是在屏幕上显示的最大网络接口数,当这个值超出了实际安装的网络接口数,仅仅监控并显示安装的网络接口信息。参数缺省值为2,如果这个值设为0,将没有网络信息被监控。
-p:指定被监控的进程数。这也是在屏幕上显示的最大进程数。缺省值为20,如果这个值为0,没见进程信息被监控。得到的这些进程信息是topas的主要开销。如果进程信息不需要,通常使用这个参数指定那些不想要的进程信息。
-w:指明被监控的WLM类的值。这也是在屏幕上显示的最大WLM值,当这个值超出了实际安装的WLM数,仅仅显示那些安装的WLM类的信息,缺省值为2,如果这个值为0,将没有信息显示。
-c:指明被监控的CPU数。这也是在屏幕上显示的最大CPU值,当这个值超出了实际安装的CPU数,仅仅显示那些安装的CPU的信息,缺省值为2,如果这个值为0,将没有信息显示。
-P:显示整个全屏进程显示。显示一系列最繁忙的进程,类似于默认显示的一部分,每个进程仅仅显示几列,可以通过任何列排序。
-W:显示全屏WLM(负载管理器)类。顶部显示一系列WLM类,类似于WLM类的一部分显示。
3.2 topas子命令
一些子命令:
a 这个键显示所有被监控的(CPU,network,disk,WLM,process)不同部分。
c 这个键在累积报告和最忙的CPU之间进行切换。
d 这个键在最忙的磁盘和系统总的磁盘活动之间进行切换。
h 显示帮助信息。
n 这个键在最忙的接口和系统总的网络活动之间进行切换。
w 这个键在WLM类的开关之间切换。
p 这个键进程的开关之间切换。
P 这个键用全屏进程显示替换默认的显示。
W 这个键用全屏WLM类显示替换默认显示。
f 移动光标到一个WLM类上,这个键可以在WLM屏幕底端显示一系列进程情况。
q 退出程序。
r 更新显示。
3.3 EVENTs部分
下是各个部分表示的含义:
Cswitch:在监控期间每秒钟内容转换的次数;
Syscall:在监控期间每秒钟运行系统呼叫的总次数;
Reads:在监控期间每秒钟运行读系统呼叫的次数;
Writes:在监控期间每秒钟运行写系统呼叫的次数;
Forks:在监控期间每秒钟运行派生系统呼叫的次数;
Execs:在监控期间每秒钟运行执行系统呼叫的次数;
Runqueue:等待处理器空闲以便运行的线程平均数;
Waitqueue:等待分页完成的线程平均数;
Readch:在监控期间通过读系统呼叫每秒钟读出的字节数;
Writech:在监控期间通过写系统呼叫每秒钟写入的字节数;
Rawin:在监控期间通过TTYs每秒钟读入的裸字节数;
Ttyout:在监控期间每秒钟写入TTYs的字节数;
Igets:在监控期间每秒钟到节点查找例行程序的呼叫数;
Namei:在监控期间每秒钟路径查找例行程序的呼叫数;
Dirblk:在监控期间通过目录搜索例行程序每秒钟扫描到的目录块数;
3.4 PAGING部分
PAGING部分显示的是分页每秒钟次数的统计:
Faults:在监控期间每秒钟发生的分页错误总数;
Steals:在监控期间被虚拟内存管理器每秒钟偷走的物理内存4k的帧;
PgspIn:在监控期间每秒钟从分页空间中读取的4k分页数;
PgspOut:在监控期间每秒钟写入分页空间的4k分页数;
PageIn:在监控期间每秒钟读取的4k分页数,这包括从文件系统读操作相关的分页活动,从这个值减去PgspIn的值就是每秒钟从文件系统读操作相关的分页活动数;
PageOut:在监控期间每秒钟写入的4k分页数,这包括向文件系统写操作相关的分页活动,从这个值减去PgspOut的值就是每秒钟向文件系统写操作相关的分页活动数;
Sios:在监控期间通过虚拟内存管理器得到的I/O请求数;
3.5 MEMORY部分
Momory部分显示的是实际内存和在使用中的内存:
Real,MB:以M为单位的实际内存;
%Comp:当前分配给计算分页片断的内存占实际内存的百分比。计算分页片断由分页空间产生。
%Nocomp:当前分配非计算分页片断的内存占实际内存的百分比。非计算分页片断包括那些文件空间,数据文件、可执行文件、或者共享库文件。
%Client:当前分配给用来缓冲远程挂载文件的内存占实际内存的百分比。
3.6 PAING SPACE部分
PAING SPACE显示分页空间的大小和使用率:
Size,MB:系统里所有分页空间的大小,以M为单位;
%Used:当前使用的分页空间占总空间的百分比;
%Free:当前空闲的分页空间占总空间的百分比。
3.7 CPU工具:
User%:显示运行的用户程序所占用的CPU百分比;
Kern%:显示运行的内核程序所占用的CPU百分比;
Wait%:显示等待IO操作所占用的CPU百分比;
Idel%:显示CPU空闲的百分比。
3.8 网络接口:
Interf:网络接口的名称;
KBPS:在监控期间每秒钟通过的以M为单位的总流量,这部分包括每秒钟接收和发送的总和。
I-Pack:在监控期间每秒钟接收到的数据包数;
O-Pack:在监控期间每秒钟发送的数据包数;
KB-In:在监控期间每秒钟接收到的字节数(以K为单位);
KB-Out:在监控期间每秒钟发送的字节数(以K为单位)。
3.9 物理磁盘:
Disk:物理磁盘的名称;
Busy%:指明物理磁盘在活动状态的时间百分比;
KBPS:在监控期间每秒钟读写的字节数(以K为单位);
TPS:每秒钟物理磁盘的数据传输量。一次传输指的是一次I/O请求;
KB-Read:每秒钟从物理磁盘读出的K字节数;
KB-Write:每秒钟向物理磁盘写入的K字节数。
3.10 WLM(负载管理)类:
%CPU Utilization:CPU的平均利用率;
%Mem Utilization:内存的平均利用率;
%Blk I/O:块I/O的平均利用率;
3.11进程:
NAME:可执行程序的名称;
Process ID:进程的ID号;
%CPU Utilization:进程的CPU平均使用率,这个值指的是进程在生命周期中的平均使用率;
Paging Space Used:分配给进程的分页空间大小;
Process Owner:拥有这个进程的用户名;
Workload Management(WLM)Class:进程属于哪个WLM class。
4、pTools—进程监控的一组工具
Ptools是Aix5.2引进的system v unix提供的一组工具, 用于查看进程相关的信息.
包括命令procwdx, procfiles, procflags, proccred, procmap, procldd, procsid, procstack, procstop, procrun, procwait, proctree.
4.1 procwdx
Procwdx打印进程的当前工作目录
# ps vx |head -1; ps vx |sort +3 -nr | head -10
PID TTY STAT TIME PGIN SIZE RSS LIM TSIZ TRS %CPU %MEM COMMAND
53274 - A 137617:51 0 40 36 xx 0 0 12.8 0.0 wait
8196 - A 136562:05 0 40 36 xx 0 0 12.7 0.0 wait
49176 - A 128993:26 0 40 36 xx 0 0 12.0 0.0 wait
57372 - A 128264:57 0 40 36 xx 0 0 11.9 0.0 wait
303258 - A 533:49 412 1364 256 xx 42 0 0.0 0.0 dtgreet
483564 - A 129:40 4401 804 548 xx 32 24 0.0 0.0 /usr/bi
368856 - A 82:35 562 872 20 xx 40 0 0.0 0.0 /usr/sb
0 - A 59:07 7 52 44 xx 0 0 0.0 0.0 swapper
16392 - A 58:59 0 60 32 xx 0 0 0.0 0.0 lrud
131254 - A 52:22 1719 512 284 xx 3 4 0.0 0.0 /usr/sb
#
#
# procwdx 131254
131254: /
4.2 procfiles
报告关于进程打开的所有文件描述符的信息
# ps -ef |head -1; ps -ef |grep ora|head -5
UID PID PPID C STIME TTY TIME CMD
oracle 299146 1 0 Apr 10 - 13:39 ora_pmon_arpdb
oracle 323600 1 0 Apr 10 - 10:31 ora_smon_arpdb
oracle 442460 1 0 Apr 10 - 9:38 ora_lgwr_arpdb
oracle 462924 1 0 Apr 10 - 15:14 ora_dbw0_arpdb
oracle 471062 1 0 Apr 10 - 1:44 ora_mman_arpdb
#
# procfiles 299146
299146 : ora_pmon_arpdb
Current rlimit: 65534 file descriptors
0: S_IFCHR mode:00 dev:10,4 ino:286 uid:202 gid:201 rdev:2,2
O_RDONLY
1: S_IFCHR mode:00 dev:10,4 ino:286 uid:202 gid:201 rdev:2,2
O_RDONLY
2: S_IFCHR mode:00 dev:10,4 ino:286 uid:202 gid:201 rdev:2,2
O_RDONLY
3: S_IFCHR mode:00 dev:10,4 ino:286 uid:202 gid:201 rdev:2,2
O_RDONLY
4: S_IFCHR mode:00 dev:10,4 ino:286 uid:202 gid:201 rdev:2,2
O_RDONLY
5: S_IFREG mode:0200 dev:10,12 ino:191040 uid:202 gid:201 rdev:0,0
O_WRONLY size:550
6: S_IFREG mode:0200 dev:10,12 ino:190026 uid:202 gid:201 rdev:0,0
O_WRONLY | O_APPEND size:8944487
7: S_IFREG mode:0660 dev:10,12 ino:76412 uid:202 gid:201 rdev:0,0
O_RDWR size:0
8: S_IFREG mode:0200 dev:10,12 ino:190026 uid:202 gid:201 rdev:0,0
O_WRONLY | O_APPEND size:8944487
9: S_IFREG mode:0775 dev:10,12 ino:76408 uid:202 gid:201 rdev:0,0
O_RDWR | O_SYNC size:1552
10: S_IFREG mode:0640 dev:10,12 ino:191039 uid:202 gid:201 rdev:0,0
O_RDWR | O_APPEND size:1148
11: S_IFREG mode:0555 dev:10,12 ino:143871 uid:202 gid:201 rdev:0,0
O_RDONLY size:842240
12: S_IFREG mode:0775 dev:10,12 ino:76408 uid:202 gid:201 rdev:0,0
O_RDWR | O_SYNC size:1552
15: S_IFREG mode:0775 dev:10,12 ino:76409 uid:202 gid:201 rdev:0,0
O_RDWR size:24
16: S_IFREG mode:0555 dev:10,12 ino:143871 uid:202 gid:201 rdev:0,0
O_RDONLY size:842240
4.3 procflags
打印 /proc 跟踪标志、暂挂和挂起信号和指定进程中每个线程的其它 /proc 状态信息。
4.4 proccred
打印进程的凭证(有效的、真实的、已保存的用户标识和组标识)。
4.5 procmap
打印进程的地址空间映射。
4.6 procldd
列出进程装入的动态库,包括使用 dlopen() 显式连接的共享对象。
4.7 procsig
列出进程定义的信号操作。
4.8 procstack
打印进程中的所有线程的十六进制地址和符号名称。
4.9 procstop
停止 PR_REQUESTED 事件的进程。
4.10 procrun
启动在 PR_REQUESTED 事件中停止的进程。
4.11 procwait
等待全部指定的进程终止。
4.12 proctree.
打印包含指定进程标识或用户的进程树。
# ps -ef |head -1; ps -ef |grep ora| sort -10
UID PID PPID C STIME TTY TIME CMD
root 1228964 893046 0 15:33:56 pts/0 0:00 grep ora
oracle 299146 1 0 Apr 10 - 13:39 ora_pmon_arpdb
oracle 323600 1 0 Apr 10 - 10:31 ora_smon_arpdb
oracle 442460 1 0 Apr 10 - 9:38 ora_lgwr_arpdb
oracle 462924 1 0 Apr 10 - 15:14 ora_dbw0_arpdb
oracle 471062 1 0 Apr 10 - 1:44 ora_mman_arpdb
oracle 479474 1 0 Apr 10 - 1:47 ora_psp0_arpdb
oracle 487432 1 0 Apr 10 - 26:34 ora_mmnl_arpdb
oracle 491762 1 0 Apr 10 - 10:51 ora_ckpt_arpdb
oracle 495864 1 0 Apr 10 - 2:00 ora_qmnc_arpdb
oracle 786640 1 0 Apr 10 - 0:00 ora_q001_arpdb
oracle 884988 1 0 11:46:03 - 0:00 ora_q004_arpdb
oracle 901310 1 0 Mar 12 - 3:18 /oracle/product/10.2.0/bin/tnslsnr LISTENER -inherit
oracle 1155298 1 0 Apr 10 - 3:22 ora_mmon_arpdb
oracle 1175776 1 0 Apr 10 - 20:09 ora_cjq0_arpdb
oracle 1179830 1 0 Apr 10 - 0:09 ora_s000_arpdb
oracle 1224930 1 0 02:24:35 - 0:00 ora_q002_arpdb
oracle 1232974 1 0 Apr 10 - 0:01 ora_reco_arpdb
oracle 1241260 1 0 Apr 10 - 0:06 ora_d000_arpdb
#
#
# proctree 901310
901310 /oracle/product/10.2.0/bin/tnslsnr LISTENER -inherit
# proctree 1241260
1241260 ora_d000_arpdb
-
AIX中查看进程内存使用
AIX中查看进程内存使用 学习了:http://www.2cto.com/os/201308/235858.html 1,从大到小排列10个内存使用率进程 ps aux | head -1 ; p ...
-
AIX中物理卷管理
1.物理卷管理 1.1物理卷区域的分布 按照磁头在硬盘上的读写速率不同可以把硬盘划分成几个不同级别的区域.因此逻辑卷对应的PP在哪一个级别的区域上,对逻辑卷的读写速率影响很大. 硬盘的截面分为5个 ...
-
AIX中的服务管理
1.SRC AIX系统使用资源控制器(SRC,system resource controller),控制各种服务子系统,包括启动,停止进程,搜集进程状态信息等. AIX系统中服务有子系统组 ...
-
kbmmw 中的进程管理小工具
kbmmw 5.6.20 发布了,本版本带来一个小功能,就是可以在kbmmw 应用里面建立和管理进程, 虽然你可以直接调用windows api 做类似的事情,但是kbmmw 里面简化了操作,也加强了 ...
-
AIX中逻辑卷管理
1.逻辑卷管理 逻辑卷的大小确定: 逻辑卷大小(MB)=PP的大小(MB)*LV包含的LP的个数 LV占用的物理空间(MB)=PP的大小(MB)*LV包含的LP的个数*LV拷贝的副本数 逻辑卷控制 ...
-
AIX中卷组管理
1.创建卷组 使用mkvg指令创建卷组. mkvg 指令参数 -B 创建大型卷组,该卷组最大能容纳128个物理卷和512个逻辑卷 -C 创建增加型并发卷组 -f 强制创建卷组 -G 与-B一样,创 ...
-
linux中的进程管理
USER 那个用户启动的进程 PID 该进程的ID号 %CPU 占用的CPU百分比 %MEM 占用的物理内存百分比 VSZ 占用虚拟内存大小 KB RSS 占用实 ...
-
理解Docker容器的进程管理
摘要: Docker在进程管理上有一些特殊之处,如果不注意这些细节中的魔鬼就会带来一些隐患.另外Docker鼓励"一个容器一个进程(one process per container)&qu ...
-
Python::OS 模块 -- 进程管理
os模块的简介参看 Python::OS 模块 -- 简介 os模块的文件相关操作参看 Python::OS 模块 -- 文件和目录操作 os模块的进程参数 Python::OS 模块 -- 进程参数 ...
随机推荐
-
psoc学习
第一是:项目的路径需要放在Documents and Settings\,也就是默认的文件夹的地方,不然会报错错误范例为:Question:CY8CKIT-023 kit example projec ...
-
c#实现简单金山打字小游戏(源码)
using GameDemo.Utils;using System;using System.Collections.Generic;using System.Linq;using System.Te ...
-
ios 多线程必读内容 :锁
大学时的生产者消费者问题还记得吗?ios中的锁,请阅读以下官方文档,虽然是英文的,但是说的非常准确: Threading Programming Guide 中的 Synchronization ht ...
-
url重写后发布出错问题
iis7 配置urlrewriter重写失效的问题 在IIS7下,如果使用微软的 URLRewriter 重写控件则需要在WEB.CONFIG中配置以下信息 第一个配置: <configSect ...
-
.NET 面试题(2)
61.Application .Cookie和 Session 两种会话有什么不同? 1.Application 储存在服务端,没有时间限制,服务器关闭即销毁(前提是自己没写销毁方法) 2.Sessi ...
-
MySQL数据库分区修改【原创】
之前有个表分区添加时s201607添加成s201617,所以在查询7月份数据时报错 错误的 alter table statistics_ticket add partition (partition ...
-
Java钉钉开发_02_免登授权(身份验证)(附源码)
源码已上传GitHub: https://github.com/shirayner/DingTalk_Demo 一.本节要点 1.免登授权的流程 (1)签名校验 (2)获取code,并传到后台 (3) ...
-
微信小程序之swiper轮播图中的图片自适应高度
小程序中的轮播图很简单,官方都有例子的,但是唯一的缺陷就是swiper是固定死的150px高度,这样如果传入的图片大于这个高度就会被隐藏.辣么,怎样让图片自适应不同分辨率捏. 我的思路是:获取屏幕宽度 ...
-
resume
源码链接(码云):https://gitee.com/tinqiao/level_17_software_engineering.git 截图效果: 源码: <!DOCTYPE html> ...
-
# Java Queue系列之PriorityQueue
在上一篇中我用一张图来梳理了一下Java中的各种Queue之间的关系.这里介绍下PriorityQueue.PriorityQueue位于Java util包中,观其名字前半部分的单词Priority ...