1.进程与线程区别
程序就是静态的文件 进程就是程序运行中的状态
程序在运行时,至少会启动一个进程叫做主进程
进程至少会有一个线程,叫做主线程
进程之间资源隔离,进程消耗大
线程之间资源共享,线程消耗小
2.静态查看进程
ps auxf
参数解释:
a #只能查看系统里面运行的所有终端进程
u #显示进程拥有者
x #显示系统内所有进程
f #显示进程之间的父子关系
ps -ef
参数解释:
-e #显示所有进程
-l #长格式显示
-f #完整格式
字段解释
USER: #运行进程的用户
PID: #进程ID
%CPU: #CPU占用率
%MEM: #内存占用率
VSZ #进程占用的虚拟内存大小
RSS #占用的物理内存大小
STAT: #进程状态 ---了解
TTY:
? #表示没有占用终端
R #运行
S #可中断睡眠 Sleep
D #不可中断睡眠
T #停止的进程
Z #僵尸进程
X #死掉的进程
START: #进程的启动时间
TIME: #进程占用CPU的总时间
COMMAND: #进程文件,进程名
3.动态查看进程
top
##动态显示信息(每三秒刷新一次)
Shift+m #按照内存使用大小排序
Shift+p 3按照cpu使用率排序
uptime
#查看当前cpu负载(top第一行)
4.查看端口
ss -tnlp
netstat -tnlp
#查看系统中哪些端口被占用并监听了
lsof -i:端口
##查看哪个进程占用了此端口
字段解释
Proto Recv-Q Send-Q Local Address
(协议) (收的流量) (发的流量) (本地地址)
Foreign Address State PID/Program name
(远程地址) (状态) (进程)
5.杀死进程
kill -9 进程id
pkill -9 进程名
参数解释:
-1 #HUP 重新加载进程或者重新加载配置文件,PID不变
-9 #KILL 强制杀死
-15 #TERM 正常杀死(这个信号可以默认不写)
-18 #CONT 激活进程
-19 #STOP 挂起进程
补充:进程nice值
nice 值越高:表示优先级越低,例如+19,该进程容易将CPU 使用量让给其他进程。
nice 值越低:表示优先级越高,例如-20,该进程更不倾向于让出CPU。
6.作业控制
作业控制指的是控制正在运行的进程的行为。比如,用户可以挂起一个进程或者放到后台去运行,等一会儿再继续执行该进程。
jobs #查看后台任务
sleep 1000 & #一个程序运行在后台
ctrl + z 然后 bg %1 #一个程序开始运行时在前台,需要放到后台
fg %1(进程号) #一个程序要从后台调到前台
lscpu #查看cpu
free -m #参数 -m 兆字节 -k 千字节 -g G字节 #查看内存
hostnamectl #查看系统版本
hostnamectl set-hostname xxxx #主机名,修改完之后断开与终端连接,然后在重新连接即可