1. 进程的定义
程序是静态的代码文件进程是指程序运行时的形态进程是程序的一个副本进程是有生命周期的(准备期,运行期,终止期)2. 进程&线程
进程是资源调用的最小单位线程是进程的最小单位程序执行流是从上倒下贯穿运行的,当进程是多任务,cpu是多核心,多任务应该同时被每个核心处理,每个核心处理的任务叫线程线程资源是共享的3. 进程的状态
R(TAKS_RUNNING) 可执行态(running,ready)S(TASK_INTRRUPTABLE) 可唤醒休眠D(TASK_UNINTRRUPTABLE) 不可唤醒休眠T(TASK_STOP) 暂停状态Z(EXIT_ZOMBIE) 僵死态1. gnome-system-monitor 图形进程查看工具
2. ps 命令 进程查看 (三种执行风格 unix bsd GNU)
bsd 风格 (常用命令参数)
ps 选项 查看进程
a 与终端相关的进程(当用户登陆系统后产生的进程都是带终端的)x 与终端无关相关的进程u 用户信息归类的查看方式f 进程层级关系o 显示指定参数 pid 、 comm 、 nice 、 pri 、 pcpu 、 ppid 、stat 、user、 groupunix风格 (常用命令参数)
ps -选项 查看进程
-o 显示指定参数-e 显示所有进程-f 显示信息的完整格式-H 显示进程的层级结构–sort=uid,-ppid,+pid 显示指定参数ps ax 显示进程所有信息如下
PID 进程idTTY 进程用到的终端STAT 进程状态TIME 进程占用cpu时长COMMAND 进程名称ps aux显示信息如下
USER 进程所有人PID 进程id%CPU 进程使用cpu的用量 #%MEM进程所用到的内存用量VSZ 进程使用的虚拟内存大小RSS 进程常驻内存中的数据大小TTY 进程用到的终端STAT 进程状态START 进程运行时长TIME 进程占用cpu时长COMMAND 进程名称pgrep 命令—— 进程过滤
-u uid 显示指定用户进程-U user 显示指定用户进程-t tty 显示指定终端进程-l 显示进程名称-a 显示进程的完整名称-P 下时进程的子进程pidof vim 命令 —— 查看vim的pid
top 命令 —— 动态进程查看(ctrl +c结束查看)
top中的内容显示信息:
09:48:51 系统时间 up 18:54 运行时长 2 users 系统中有两个用户登陆 load average: 0.75, 0.53, 0.41 1min 5min 15min
Tasks:331 total 任务总量 3 running 正在运行 329 sleeping 休眠人物数量 0 stopped 被暂停数量 0 zombie 僵死人物数量
%Cpu(s)1.5 us 用户空间 1.9 sy 内核空间 0.0 ni nice值调整时间 58.9 id 空闲时间 0.0 wa 等待io时间 2.1 hi 处理硬件中断时间 0.2 si 处理软件中断时间 0.0 st 被偷走的时间(vm使用时间)
MiB Mem7664.6 total, 总量 5383.9 free 空闲 1312.1 used 占用 968.8 buff/cache 缓存
MiB Swap 交换分区用量top命令的参数
-d 指定刷新频率-b 以批次方式显示-n 指定显示的批次数量top内部指令
P cpu排序M 内存排序T 累计cpu时间排序l 关闭/开启uptime信息t 关闭/开启cpu&tasks 指定刷新频率k 操作进程u 查看指定用户进程系统时多任务多用户的操作模式任务的重要性是有区分的 如何确定任务的重要性? ——优先级 范围: 0–139
内核自控优先级范围:0-99 用户可控优先级:100-139
nice:-20~19(越负越优先)
renice -n -5 进程号 更改优先级
nice -n -5 vim & 指定优先级打开进程
S sleeping< 优先级高s 顶级进程T stopN 优先级低R running+运行在前台进程信号控制工具
kill 进程信号 pidkillall 进程信号 进程名字pkill 进程信号 进程条件systemctl 管理系统服务 ——服务指在系统中开启的共享系统资源到网络中的程序 systemctl命令的用法
start ##开启
stop ##关闭
status ##查看状态
reload ##重新加载 (更改加载配置,不关闭现有程序,端口不变)
restart ##重新启动服务 (更改加载配置,闭现有程序,再重新打开,端口改变)
enable ##设定服务开机启动
enable --now ##设定服务开机启动并当前开启服务
disable ##设定服务开启不其动
list-units ##查看系统所有服务当前状态
list-unit-files ##查看服务开机状态
list-dependencies ##列出服务依赖性
mask ##冻结服务
unmask ##解锁
set-default ##设定系统运行模式
multi-user.target 无图形网络模式
graphical.target 有图形的网络模式 ** get-default ##查看系统运行模式** 系统运行模式(0-6)
0 POWEROFF
1 single
2 noG+NETWORK
3
4
5 G+NETWORK
6 REBOOT