一、基础概念
1、 进程:触发任何一个事件时,系统都会将它定义成为一个进程,并且给予这个进程一个ID,称为PID,同时依据触发这个进程的用户与相关属性关系,给予这个PID一组有效的权限设置。通常,程序一般是放在磁盘中,然后通过用户的执行来触发。触发后会加载到内存中成为一个个体,那就是进程。为了操作系统可管理这个进程,因此进程有给予执行者的权限/属性等参数,并包括进程所需要的脚本与数据或文件数据等,最后再给予一个PID。
二、相关命令
1、 ps:该命令是最基本同时也是非常强大的进程查看命令。使用该命令可以查看有哪些进程正在运行以及运行的状态,进程是否结束进程有没有僵死,哪些进程占用了过多的资源等等。
① 在终端输入ps,显示如下:
该命令显示当前登录用户的执行进程。显示的项目共分为四项依次为PID(进程ID)、TTY(终端名称)、TIME(进程执 行时间)、CMD(该进程的命令行输入)
② 在终端输入 ps –ef,显示如下:
该命令将显示所有执行进程的信息。显示的项目依次为UID(执行进程的用户ID)、PID(进程ID)、PPID(父进程 ID)、TTY(终端名称)、STIME(进程启动时间)、TIME(进程执行时间) 、CMD(该进程的命令行输入)
③ 在终端输入 ps –ef|gerp liuying,显示如下:
将只显示出包含liuying的输出行,可以查询执行进程的用户为liuying的所有进程。
2、 top:是一个动态显示的过程,即可以通过用户按交互来不断刷新当前装态。
第一行显示的是:目前开机时间、开机到目前为止所经历的时间、已经登陆系统的用户人数、系统在间隔时间内的 平均负载。
第二行显示的是:目前进程的总量与个别进程在什么状态(running sleepingstopped zombie)。最后显示的是僵尸进程,需要特别注意。
第三行显示的是:CPU整体负载数,其中wa表示的是I/O等待,通常系统会变慢是由于I/O产生的问题。因此要注意这个选 项耗用的CPU资源。
第四行和第五行显示的是:目前物理内存和虚拟内存的使用情况。值得注意的是要注意de swap使用量尽量少!否则表示系 统的物理内存实在不足!
PR:进程有限执行顺序,越小越早被执行;
NI:与PR参数有关,也是越小越早被执行;
top在执行过程中可以使用交互命令(即按键命令),常用的命令如下:
<空格> 立即刷新显示;
h或者? 显示在top当中可以输入的按键命令
P 以cpu的使用资源排序显示
M 以内存的占用资源排序显示
m 切换显示内存信息
t 切换显示进程和CPU装态信息
c 切换显示命令名称和完整命令行
q 退出
3、 kill:可以用来终止后台进程。kill命令是通过向进程发送指定的信号来结束进程的。
① 常见的signal:
SIGHUP(1):启动被终止的进程,可让该PID重新读取自己的配置文件,类似重新启动。
SIGKILL(9):代表强制中断一个进程的进行,如果该进程进行到一半,那么尚未完成的部分可能会有“半产 品”产生,类似vim会有.filename.swp保留下来。
SIGTERM(15):以正常的结束进程来终止该进程。由于是正常的终止,所以后续的操作会将它完成。
② 常见的命令
kill –s信号进程号:其中,发出的信号既可以是信号名也可以对应数字。例如
kill -9 1234命令,将终止PID(进程号)为1234的进程。
kill –l:该命令显示信号列表
4、 nice:给予新的nice值
① nice[-n 数字] command
② renice [number] PID 已存在进程的PID nice值重新调整。
5、free:查看内存使用情况
① free [-b|-k|-m|-g]
-b:直接输入free时,显示的单位是KB(m:MB)
例如: