扎区门户网站建设,网站交互方式,郑州建设银行官网站,下载网站程序一、进程 程序由一条条指令构成#xff0c;在运行一个程序的时候就是把这些指令从第一条执行到最后一条#xff0c;而进程是一个正在运行的程序。
比如说#xff0c;一个main.c文件是不可以直接运行的#xff0c;对main.c进行编译链接之后生成一个main.exe#xff08;在W…一、进程 程序由一条条指令构成在运行一个程序的时候就是把这些指令从第一条执行到最后一条而进程是一个正在运行的程序。
比如说一个main.c文件是不可以直接运行的对main.c进行编译链接之后生成一个main.exe在Windows系统中或main在Linux系统中这里的main.exe或者main叫做可执行程序这个可执行程序是二进制的。所以其实程序是一个二进制文件计算机把它运行或者执行起来它就会产生一个进程。操作系统管理这些进程。
每一个进程都有一个id号为pid这个pid就是用来唯一标识一个进程的每个进程的id都是唯一的。
二、进程管理命令
1.ps命令默认显示与当前终端有关的进程信息
1ps 显示的是当前终端中所运行的进程而不是整个系统所运行的进程 从显示的结果可以看出当前终端中有2个进程bash打印的内容为 ps打印的就是当前终端的进程信息。
【注意】执行3次ps 我们可以发现ps进程的id号逐渐变大这是因为在第一个ps进程结束以后它对应的id就会被释放出来释放出来的id号可以被别的进程再次使用被复用但是并不是刚释放出来就被别的进程去使用当第二次再运行ps时它的id号会在原有的基础上增加当id值一直增加到它的最大值以后才会后头重新寻找没有被使用的id值也就是被释放出来的id值。
2ps -f显示更多的进程属性信息全格式即详细信息。 3ps -e显示系统中所有的进程信息。我们发现第一个进程的编号是从1开始 4ps -ef显示系统中所有的进程的详细信息 5ps -L显示进程中的线程IDLWP就代表线程id 2.sleep n表示睡眠阻塞n秒钟。
重新打开一个终端输入sleep 400表示睡眠400秒 再回到之前打开的终端输入ps并不能看到刚刚重新打开的终端中的sleep进程 输入ps -ef来查看系统中所有进程的详细信息这时我们就可以看到刚刚在新的终端中运行的sleep进程 但是这样很麻烦我们可以通过管道和过滤来查看ps -ef | grep sleep 这样就非常方便。
3.Ctrlc用来结束前台运行进程
结束刚刚sleep 400的进程 4.kill命令
1kill pid结束或者挂起一个进程后台和前台的进程都可以通过kill来结束。
先重新打开一个终端输入sleep 600表示睡眠600秒 然后在另一个终端找到刚刚创建的新的终端中进程sleep的id 可以看到整个进程的id是3451。
然后输入kill 3451表示通过id号来结束整个进程 2kill -9 pid强制结束进程
在一个终端中输入sleep 400表示睡眠400秒然后按Ctrlz停止这个进程 查看当前终端中的所有进程发现sleep还在 然后通过kill ipd去结束这个进程发现结束不了 这时就需要通过kill -9 pid强制结束这个进程 3kill -stop pid挂起一个进程。
5.命令 表示这个进程在后台运行 如果该进程在后台运行我们在终端就还可以进行操作比如说上面的ps命令查看进程信息但是如果该进程在前台运行那么我们在终端不能进行操作只有在该进程结束后才能进行其他操作。
6.pstree命令以树状图形式显示进程之间的关系 7.jobs命令显示当前后台的任务
如下图所示当前后台没有任务 创建一个在后台执行的进程然后通过jobs来显示当前后台的任务 8.前台和后台之间的切换
1fg %任务号将后台运行的或挂起的进程挪到前台执行 2bg %任务号将挂起的进程唤醒到后台执行
先在前台创建一个睡眠400秒的进程sleep 400然后通过Ctrlz停止这个进程 然后通过jobs命令显示后台的进程发现sleep 400这个进程的状态是停止 这时通过bg %任务号将停止的进程sleep 400唤醒到后台执行 9.top指令
查看系统资源使用情况以及进程信息
输入top指令进行查看输入q退出