进程的基础命令
六.进程基础命令
创建进程:先创建PCB,后创建进程实体
销毁过程:先释放进程实体,再释放PCB
1. 概念
程序:指令+数据
进程:运行中的程序
操作系统(OS)通过管理进程,让进程完成用户任务。
OS对进程描述:PCB(进程控制块)记录当前的进程的运行状态
PID 进程号:OS用来区分进程标识
一个PCB对应一个进程,PCB存储本质是双向链表
pcb的本质是一个结构体
struct tast_struct{
pid,state,页表信息......
}
2.并发和并行
**并行:**在同一个时刻,能够同时执行多个进程,每核CPU在每一时刻只能执行一个进程,所以要同时进行多个进程的运行需要多核CPU。
**并发:**在某一时间段,需要处理多个进程,单核CPU,在某一时刻只能处理一个任务,多个进程通过进程的切换,进程执行。
3.进程的命令
2.1 sleep命令 休眠
头文件为 unistd.h
sleep(时间) ps:时间是以秒为单位 休眠多少秒
sleep 时间 &:睡眠到后台
2.2 ps命令 显示与当前终端有关的进程信息
-e 显示系统中所有的进程信息
-f 显示更多的进程属性信息(全格式)
-L 展示当前终端上进程信息,线程LWP信息
直接使用ps 当前终端的进程信息
在执行文件后面加 &符,可以将程序在后台运行,结束命令 kill 进程号
命令:ps -ef 查看进程详细信息
UID:用户
PID:进程号,进程号是唯一的。
PPID:父进程的进程号
C:CPU的使用率
STIME:进程开始时间
TTY:终端是哪一个(ps:?表示若进程的运行与终端无关。pst/0表示由网络连接主机。tty1~tty6表示本机)
TIME:运行的时间
CMD:进程启动时使用到的命令(ps:[命令]表示内核命令)
2.3 & 后台运行程序
./main & 后台运行程序
2.4 kill命令 结束进程
kill pid 结束当前进程
kill -9 pid 强制结束进程
kill -STOP pid 挂起进程
2.5 前台程序和后台程序相互切换
bg % 任务号 进程/挂起的程序调到后台执行
fg % 任务号 将后台的进程调到前台执行
2.6 系统运行级别
init 数字
0:关机
1:单用户级别
2:多用户无网络级别
3:多用户文本界面
4:无定义、自定义界面
5:图形化界面
6:重启