引言
什么是程序?
程序:安装包
什么是进程
进程:正在运行的实例
僵尸进程和孤儿进程
僵尸进程:进程生命周期结束了,但是PID未被回收
孤儿进程:父进程生命周期结束了,但是子进程未结束,子进程被系统进程接收
ps
静态查看进程
1、查看进程
# 命令:ps, 默认查看当前进程
# 参数
-a : 查询所有进程
-x : 查看后台所有的进程
-u : 查看进程的用户
USER : 开启当前进程的用户
PID : 当前进程的ID号
%CPU : CPU的使用率
%MEM : 内存使用率
VSZ : 进程启动时默认向计算机申请的内存
RSS : 进程运行时实际使用的内存
TTY : 进程运行的终端
?: 后台运行(没有终端)
tty:使用系统终端
pts:使用虚拟终端
STAT :进程运行状态
R : 正在运行中的进程
+ : 在前台运行
S : 睡眠中状态
D : 不可中断睡眠
T : 停止状态
Z : 僵尸状态
X : 死掉的进程
< : 优先级较高的进程
N :优先级较低的进程
s : 包含子进程 yum install psmisc -y
l : 以线程的方式运行
| : 代表管道
START : 进程的启动时间
TIME : 占用CPU的时间
COMMAND : 进程执行的命令
-e : 显示所有的进程
-f : 格式化输出同时显示PPID
PPID : 父进程ID
top
动态查看进程
# 根据一定频率的去监控系统
up前是系统时间
up后是开启的时间
load average: 0.01, 0.42, 0.73
0.01 : 一分钟平均负载
0.42 : 五分钟平均负载
0.73 : 十五分钟平均负载
#补充知识
#查看cpu信息
#cpu的信息记录在/proc/cpuinfo中
#查看CPU型号
cat /proc/cpuinfo | grep name | sort | uniq
#查看CPU的数目
cat /proc/cpuinfo | grep "physical id"
#查看cpu详细信息
lscpu
# CPU加压工具
stress --cpu [需要加压的系统核心数] --timeout [加压的时间]
# CPU 性能加压工具
## 添加epel源(epel源主要用来安装红帽系列操作系统附加软件)
yum install stress -y
# CPU 性能分析工具
yum install sysstat -y
mpstat -P ALL 3
# 进程性能分析⼯具
pidstat -u 1 5
Tasks
Tasks: 125 total, 1 running, 124 sleeping, 0 stopped, 0 zombie
total : 当前系统一共运行的是125个进程
running : 正在运行的是1个
sleeping : 124个处于睡眠状态
stopped : 停止运行的进程数
zombie :僵尸进程数
%Cpu0 : 0.0 us, 0.0 sy, 0.0 ni,100.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
us :在单位时间进程使用CPU所占用的时间百分比
sy : 在单位时间内系统进程占用CPU时间百分比
ni : 在单位时间内优先使用CPU所占时间百分比
id :在单位时间内CPU空闲所占时间百分比
wa : 在单位时间内CPU阻塞态所占CPU时间的百分比
hi : 硬件中断
si : 软件中断
st : 其他占用CPU时间百分比
KiB Mem : 2027892 total, 1234180 free, 176352 used, 617360 buff/cache
total :系统总内存
free :系统空闲内存
used : 系统使用内存
buff/cache : 缓存使用内存
avail Mem :
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
PID : 进程编号
USER : 启动进程的用户
PR : 优先级
NI :nice值
VIRT : 虚拟内存
RES : 使用内存
SHR : 共享内存
%CPU : cpu使用率
%MEM :内存使用率
top快捷键
按1 : 展示所有的CPU的详情
按c : 显示正在运行进程的绝对路径
按s : 设置top监控频率(默认3秒)
按m : 按照内存排序
按z : 添加颜色
按P : 按照CPU排序
按k : 通过PID终止进程
top的参数
-d : 设置top的刷新频率
-p : 设置查看的进程PID
top -d 1 -p `pgrep nginx | head -1`
-u : 查询指定用户的经常的进程
top -u oldboy
-n : 表示查询n次
top -d 0.1 -u oldboy -n 20
清华epel源代码
[epel]
name=Extra Packages for Enterprise Linux 7 - $basearch
baseurl=https://mirrors.tuna.tsinghua.edu.cn/epel/7/$basearch
#mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-7&arch=$basearch
failovermethod=priority
enabled=1
gpgcheck=0
[epel-debuginfo]
name=Extra Packages for Enterprise Linux 7 - $basearch - Debug
baseurl=https://mirrors.tuna.tsinghua.edu.cn/epel/7/$basearch/debug
#mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-debug-7&arch=$basearch
failovermethod=priority
enabled=0
gpgcheck=0
[epel-source]
name=Extra Packages for Enterprise Linux 7 - $basearch - Source
baseurl=https://mirrors.tuna.tsinghua.edu.cn/epel/7/SRPMS
#mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-source-7&arch=$basearch
failovermethod=priority
enabled=0
gpgcheck=0