1.进程定义:
1.1程序是静态的代码文件 程序是由文件组成的 是文件内容记录的代码 代码是时间执行的动作或者数据以及逻辑 (例:打饭阿姨 打饭工具 饭)进程就是程序没有运行完毕的时候(例:打饭的过程)
进程是指程序运行的状态
进程是程序的一个副本
进程是有生命周期(准备期,运行期,终止期)
进程与线程
进程是资源调用的最小单位
进程与线程
1.2进程是资源调用的最小单位
线程是进程的最小单位
线程就相当于进程的一个小的任务
程序执行流是从上到下贯穿运行的
为什么会有线程?
cpu多核心化 充分使用cpu的每一个核心 就让每一个核心对线程里的每一个子任务进行并行处理
1.3 进程状态
R可执行态
S可唤醒态
D 不可唤醒的休眠
T 暂停状态
Z 僵死态
2.进程查看命令
ps 进程查看
ps命令的三种执行方式 (unix bsd GNU)
ps a 与终端相关的进程
ps x 与终端无关相关的进程
ps ax 显示所有进程
ps axu 用户所有进程的信息归类查看方式
ps -f 进程的层级关系
ps -o 显示制定参数 pid comm nice pri pcpu ppid stat user group
ps -e 显示所有进程
ps -f 显示进程的完整格式
ps -H 显示进程的完整格式
ps -o 显示指定参数
usd风格
ps -e 查看所有进程
ps -eH 进程层级关系
ps -eHf进程详细信息
ps -eo pid,comm....显示进程某个信息
GNU风格
pgrep 过滤进程
pgrep -u uid 显示指定用户进程
pgrep -U user 显示指定用户进程
pgrep -t tty 显示指定终端进程
-l 显示进程名称
-a 显示进程的完整名称
-p 进程的子进程
pidof vim
top的命令参数
-d 指定刷新频率
-b 以批次的方式显示
-n指定显示批次的数量
3.进程优先级
系统时多任务用户的操作模式
任务的重要性是有区分的
如何确定任务的重要性
优先级
开启一个指令并且指定它的优先级
显示指定的参数
S sleeping
< 优先级高
s 顶级进程
T stop
R running
+ 运行在前台
4.进程的前后台调用
ctrl+z 把占用的shell的进程打入后台
bg 把后台挂起的进程运行起来
fg 把后台调回到前台
& 运行进程在后台
jobs查看当前shell中在后台的所有工作
5.进程信息
1 重新加载系统配置文件(source) 2 清空内存中的数据 3 清空内存中的鼠标
9 强行结束进程(不能被阻塞)15 正常关闭进程 18 运行被暂停的进程
19 暂停进程(不会被阻塞) 20暂停进程(会被阻塞)
进程控制工具
kill 进程信号 pid
killall 进程信号 进程名字
pkill 进程信号 进程条件
设定网络虚拟环境
6.systemctl 守护进程
实验环境:两台主机
远程操作主机 ssh 远程主机ip -l 远程主机登录
守护进程
替内核分担程序控管的程序
通常Pid为1
systemctl ----->1
systemctl 管理系统服务
服务指在系统中开启的共享资源到网络中的程序
cs模型 cs ----------server
systemctl命令的用法
start 开启 stop 关闭 status 查看状态 reload 重新加载
restart 重新启动服务 enable 设定服务开机启动
enable -now 设定服务开机启动并当前开启服务
disable 设定服务开机不启动
list-units 查看系统所有服务当前状态
list-units-files 查看服务开机状态
list-dependencies 列出服务依赖性
mask 冻结服务
umask 解锁
set-default 设定系统运行模式
multi-user.target 无图形模式
graphical.target 有图形的网络模式
get-default 查看系统运行的模式