
进程基本状态
就绪——进程已经分配到资源,因为其他进程占用CPU,所以暂时不能运行而等待分配CPU的状态。
等待——因等待某事件而暂时不能运行的状态。
运行——进程分配到CPU,在处理器上运行。
父子进程
子进程是由一个进程所产生的进程,产生这个子进程的进程称为父进程。
前台进程
在shell提示处打入命令,创建一个子进程,运行命令。shell等待命令退出,返回到对用户给出提示符。这条命令即前台运行,在完成之前不能执行另一个命令。如:ls。
后台进程
shell提示处打入命令,随后加&,shell创建子进程运行命令,但不等待命令退出,直接返回到对用户给出提示,这就是后台运行。例:find /etc -name init > /home/init.find &。
w 查看用户信息命令
显示信息含义:
JCPU 以终端代号区分,所有相关进程执行时,所消耗CPU时间会显示在这里
PCPU CPU执行程序耗费时间
WHAT 用户正在执行操作
load average 分别显示系统在过去1、5、15分钟内的平均负载程度,一般0.8左右为负载较轻
FROM 显示用处从何处登录系统,如果显示“:0”为X window下启动,并打开文本模式窗口登录
IDLE 用户闲置时间,如果一旦执行任何操作,该计时器会清零
ps 查看进程,例:ps -le,ps -aux,表示查看所有用户执行的进程的详细信息(常用)
-a 显示所有用户进程
-u 显示用户名和启动时间
-x 显示没有控制终端的进程
-e 显示所有进程
-l 长格式显示
-w 宽行显示,可以多个w进行加宽
显示信息含义:
PID 进程号
PPID 父进程进程号
TTY 进程启动终端
STAT 进程当前状态,S休眠状态,D不可中断休眠状态,R运行状态,Z僵死状态,T停止
NI 进程优先级
TIME 进程自启动以来启用CPU总时间
USER 用户名
%CPU 占用CPU时间和总时间的百分比
%MEM 占用内存与系统内存总量的百分比
举例:
ps -aux | grep emacs 查看emacs的进程详细情况
ps -uU [用户名] 查看用户执行信息
pstree 查看树状显示的进程
pgrep [进程名] 查进程PID
top 作用与ps类似,可动态更新数据,默认5秒,其他Unix可能没有这个工具
d 指定刷新时间间隔
c 显示整个命令行
u 查看指定用户进程
k 终止进程
h 获得帮助
r 重新设置优先级
s 改变刷新时间间隔
W 将当前设置写入~/.toprc文件中
q 退出
kill 杀死进程
-9 [进程号] 强制关闭
-1 [进程号] 重启进程
killall [进程名] 关闭所有相关进程
xkill 关闭图形程序
pkill [进程名] 关闭所有相关进程,与pillall类似
举例:
kill -9 `pgrep emacs` 关闭所有与emacs相关进程
nice 指定程序运行优先级
-[优先级] [进程] 例:nice --5 /etc/rc.d/init.d/httpd start,以-5优先级启动httpd进程
renice 改变正在运行进程的优先级
-[优先级] [PID]
* 优先级取值范围为-20到19,-20为最大优先级,19为最小优先级,默认为0 *
nohup 使进程在用户退出后继续执行该程序,如果不指定保存信息目录,错误信息默认保存在当前目录的nohup.out中
例:nohup find / -name init* > /home/find.init &
Ctrl z 挂起(暂停)
Ctrl c 终止
fg 恢复进程前台运行
bg 恢复进程后台运行
jobs 查看被挂起进程