进程的定义:
程序是静态的代码文件
进程是指程序运行时的形态
进程是程序的一个副本
进程是有生命周期的(准备期,运行期,终止期)
进程&线程
进程是资源调用的最小单位
线程是进程的最小单位
程序执行流是从上倒下贯穿运行的
当进程是多任务物,cpu是多核心,多任务应该同时被每个核心处理,每个核心处理的任务叫线程
线程资源是共享的.
进程状态
R(TAKS_RUNNING) 可执行态(running,ready)
S(TASK_INTRRUPTABLE) 可唤醒休眠
D(TASK_UNINTRRUPTABLE) 不可唤醒休眠
T(TASK_STOP) 暂停状态
Z(EXIT_ZOMBIE) 僵死态
查看进程
图形中 gnome-system-monitor
不在图形中 ps
a 带终端的带字符设备的
x 与终端无关
ax 全部进程
u 用用户信息归类
f 显示层级结构
o (pid) 显示指定信息(pid)
(pid comm nice pri pcpu ppid stat,user,group)
-e 显示所有信息
-f 显示信息完整格式
-H 显示层级结构
-o 指定信息
-eo %cpu --sort=%(-)cpu 按照cpu进行正(倒)续排列
ps ax显示信息如下:
PID 进程id
TY 进程用到的终端
STAT 进程状态
TIME 进程占用cpu时长
COMMAND 进程名称
ps aux显示信息如下:
USER 进程所有人 PID 进程id
%CPU 进程使用cpu的用量
%MEM 进程所用到的内存用量
VSZ 进程使用的虚拟内存大小
RSS 进程常驻内存中的数据大小
TTY 进程用到的终端
STAT 进程状态
START 进程运行时长
TIME 进程占用cpu时长
COMMAND 进程名称
pgrep
-u + 用户id 显示进程id
-U +用户名 显示进程id
-l 显示进程名称
-a 显示进程完整名称
-P 显示子进程
pidof cat 显示cat进程id
动态监控 top
内部命令
P cpu排序
M 内存排序
l 最上面系统的负载隐藏或显示
t 第二行隐藏
s + 数字 刷新时间
k + pid 对特殊进程进行处理
u + 用户名 对指定用户的进程进行处理
参数
-d 对刷新时间更改
-n 1 刷新一次
-b 和-n一起使用是显示下面的信息
进程优先级
普通用户只能调低
nice (-20 19)对应100 到139 越小等级越高
pri (0 39) 越大越高
(使用ps -o 查看)
renice -n -数字(-20 19) pid号
打开时直接指定 nice -n 5 cat&
关闭进程 kill -9 pid号
killall -9 进程名称
前后台 jobs查看后台进程包括运行的和停止的 (有进程号)
fg +进程号 调回前台 直接fg表示对代加号的处理
bg +进程号 在后台运行
信号
kill -2 清理内存
kill -9 强制关闭
kill -15 正常关闭
kill -18 运行被暂停的进程
kill -19 暂停进程
kill -20 暂停进程(可被拒绝)
kill -1 都+pid 重新加载文件不暂停 kill +pid
killall +进程名
pkill -U 用户名(结束某一类)
守护进程
systemctl
status sshd 查看服务sshd
start 开启服务
stop 关闭服务
restart 重新启动
reload 重新加载
enable 开机启动
enable --now sshd 开机启动并现在也启动
disable 不开机启动
list-units 所有服务当前状态
list-unit-files 所有服务开机状态
list-dependencies 所有服务依赖性
mask 冻结
umask 解冻
set-default 设定启动有图或者无图
multi-user.target 开机无图
graphical.target 开机有图
w 显示正在使用的账号 看的是 (/var/log/utmp)
-i 显示来源
last 使用过的用户 (/var/log/wtmp)
lastb 使用但没成功的账户 (/var/log/btmp)