1.进程定义
进程的定义: 程序是静态的代码文件
进程是指程序运行时的形态
进程是程序的一个副本
进程是有生命周期的 (准备期,运行期,终止期)
2.进程&线程
进程是资源调用的最小单位
线程是进程的最小单位
程序执行流是从上往下贯穿运行的
当进程时多任务物,cpu是核心,多任务应该同时被每个核心处理,每个核心处理的任务叫线程
线程是资源共享的
进程状态
#R(TAKS_RUNNING) ##可执行态(running,read)
#S (TASK_INTRRUPTABLE) ##可唤醒休眠
#D (TASK_UNINTRRUPTABLE) ##不可唤醒休眠
#T (TASK_STOP) ##暂停状态
#Z (EXIT_ZOMBIE) ##僵死态
图形方式查看进程
`gnome-system-monitor 主机上打开的任务管理面板
`pstree 用树状图显示当前所有进程`
ps(文本查看)
ps命令的三种执行风格 unix bsd GNU
bsd风格(不带-)
ps a #与终端相关的进程
ps x #与终端无关的进程
ps u #用户信息归类的查看方式
ps f #进程层级关系
ps o #显示指定参数 ps o pid,comm,nice,pid
ps ax | less
ps ax 显示信息如下:
#PID 进程id
#TTY 进程用到终端
#STAT 进程状态
#TIME 进程占用cpu时长
#COMMAND 进程名称
ps aux 显示信息如下:
#USER 进程所有人
#PID 进程id
#%CPU 进程使用cpu的用量
#%MEM 进程所用到的内存用量
#VSZ 进程使用的虚拟内存的大小
#RSS 进程常驻内存中的数据大小
#TTY 进程用到的终端
#STAT 进程状态
#START 进程运行时长
#TIME 进程占用cpu时长
#COMMAND 进程名称
ps axo pid,%cpu,%mem,%comm,%time,%group >>>>>>>>>
unix风格(带-)
ps -e #显示所有进程
ps -f #显示信息的完整格式
ps -H #显示进程的层级结构
ps -o #显示指定参数
--sort=
ps -eo %cpu --sort=%cpu排序
ps -eo %cpu --sort=-%cpu倒序
“pgrep” #进程过滤
#-u uid 显示指定用户进程
#-U user 显示指定用户进程
#-t tty 显示指定终端进程
#-l 显示进程名称
#-a 显示进程的完整名称
#-P 显示进程的子进程
pidof (查看进程pid)
pidof vim
pidof bash
pidof ps
top (动态进程查看)
top 外部参数
top内部参数
top 命令界面如下:
3.进程优先级
系统时多任务多用户的操作模式
任务的重要性是有区分的
“优先级”
范围:0——139
内核自控优先级范围:0——99
用户可控优先级范围:100——139
nice值范围: -20——19
renice -n -5 id 更改优先级
nice -n -5 cat & 指定优先级并打开进程————————cat & 表示直接在后台运行
查看进程指定参数
ps -o pid/nice/stat/comm
以下是查看nice时显示的其他字符作代表的含义
< 表示优先级高
s 顶级进程
S sleeping
T stop
N 优先级低
R running
+ 在前台运行
du 命令的用法
du命令用于查看文件、目录在磁盘中占用空间的大小;
4.进程前后台的调用
命令参著及作用:
<ctrl>+<z> 把占用shell的进程打入后台挂起
bg 把后台挂起的进程运行起来
fg 把后台进程调回前台
& 运行进程在后台
jobs 查看当前shell中在后台的所有工作
5.进程信息号
man 7 signal man命令查看进程信号
进程信号控制指令:
kill 进程信号 pid
killall 进程信号 进程名称 ##同样名称的所有进程都执行
pkill 进程信号 进程条件
6.systemd守护进程
systemctl 命令:
systemctl list-unit-files 查看服务开机运行情况
systemctl list-units 查看服务当前运行情况
systemctl list-dependencies service 查看服务依赖性
systemctl status service 查看服务状态
systemctl start service 开启服务
systemctl stop service 关闭服务
systemctl reload service 重新加载服务配置
systemctl restart service 重新启动服务
systemctl enable service 设定服务开机启动
systemctl enable --now service 设定服务开机启动并开启服务
systemctl disable service 设定服务开机关闭
systemctl set-default multi-user.target 设定系统运行级别为无图形网络模式
systemctl set-default graphical.target 设定系统运行级别为图形网络模式
例如 查看服务开机启动运行情况:
7.系统中登录审计
登陆审计命令:
w 显示正在登陆系统的账号
w -i 显示登录来源
last 登陆成功现在已经退出的
lastb 试图登陆但未成功