Linux进程管理

1.首先我们要了解什么是进程
进程是已启动的可执行程序的运行实例,进程有以下组成部分:
? 已分配内存的地址空间;
? 安全属性,包括所有权凭据和特权;
? 程序代码的一个或多个执行线程;
? 进程状态。
程序: 二进制文件,静态 /usr/bin/passwd ,/usr/sbin/useradd
进程: 是程序运行的过程, 动态,有生命周期及运行状态。
静态查看进程--ps
Linux进程管理
首先可以按照我们上图的命令进行操作,执行结果回出现一大片我们没有接触过的东西,我们下面给大家解释清楚。
Linux进程管理
上面这张图片介绍的是我们命令中的aux的功能。
Linux进程管理

这张图我们介绍了执行结果中的root 、PID等代表什么,将它们记住以后,我们后面的一些执行结果就容易理解了。
进程的排序--sort
Linux进程管理
查看父子关系--ps -ef
Linux进程管理
自定义显示字段--ps axo
Linux进程管理
动态查看进程--top
动态查看进程 top,像windows的任务管理器
[root@qianfeng ~]# top //回车,立刻刷新。按z彩色显示,按F,通过光标设置列的顺序。
[root@qianfeng ~]# top -d 1 //每1秒刷新。
[root@qianfeng ~]# top -d 1 -p 10126 查看指定进程的动态信息
[root@qianfeng ~]# top -d 1 -p 10126,1 查看10126和1号进程
使用信号控制进程
信号种类:
给进程发送信号(kill -l列出所有支持的信号)
[root@qianfeng ~]# kill -l
编号 信号名
1) SIGHUP 重新加载配置
2) SIGINT 键盘中断Ctrl+C
3) SIGQUIT 键盘退出Ctrl+\,类似SIGINT
9) SIGKILL 强制终止,无条件
15) SIGTERM 终止(正常结束),缺省信号
18) SIGCONT 继续
19) SIGSTOP 暂停
20)SIGTSTP 键盘暂停Ctrl+Z
1 创建2个文件,查看终端号。
[root@qianfeng ~]# touch file1 file2
[root@qianfeng ~]# tty
/dev/pts/1

2 通过一个终端,打开一个vim
[root@qianfeng ~]# vim file1

3 通过另一个终端,打开一个vim
[root@qianfeng ~]# tty
/dev/pts/2
[root@qianfeng ~]# vim file2

3 通过另一个终端,查询两个进程。
[root@qianfeng ~]# ps aux |grep vim
root 4362 0.0 0.2 11104 2888 pts/1 S+ 23:02 0:00 vim file1
root 4363 0.1 0.2 11068 2948 pts/2 S+ 23:02 0:00 vim file2

4 发送信号15 和信号9 ,观察两个终端程序状态。
[root@qianfeng ~]# kill -15 4362
[root@qianfeng ~]# kill -9 4363
观察两个终端,一个正常终止,一个非法杀死。
nice优先级
nice级越高,优先级越低
nice级越低,优先级越高
我们需要再打开一个终端,进入终端后我们输入vim 1,返回第一个终端,我们看看他的进程号,
Linux进程管理
我们需要将它的进程号记住,大家会发现我在下面写了一条命令proc,这是因为我们在打开一个程序的时候,系统会自己创建一个备份,我们需要进去查看我们的进程是否运行。
Linux进程管理
我们找到了5371,我们对它的优先级进行更改,Linux进程管理

Linux进程管理

上一篇:性能分析(3)- 短时进程导致用户 CPU 使用率过高案例


下一篇:Linux指令入门-系统管理