1,ps 查看当前系统上的进程信息
https://blog.csdn.net/u012796085/article/details/109813210
2,top 查看实时的进程信息
top - 16:55:33 up 48 days, 15:13, 1 user, load average: 0.06, 0.07, 0.05
Tasks: 131 total, 1 running, 130 sleeping, 0 stopped, 0 zombie
%Cpu(s): 1.3 us, 0.3 sy, 0.0 ni, 98.4 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 3871216 total, 662280 free, 2247048 used, 961888 buff/cache
KiB Swap: 0 total, 0 free, 0 used. 1170852 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
34741 root 20 0 478696 50196 6948 S 1.0 1.3 27:52.38 BT-Panel
2274 mysql 20 0 2911432 630308 11220 S 0.7 16.3 576:14.35 mysqld
9 root 20 0 0 0 0 S 0.3 0.0 246:01.20 rcu_sched
30835 root 20 0 162144 2296 1584 R 0.3 0.1 0:00.04 top
36901 redis 20 0 171120 10300 1316 S 0.3 0.3 110:17.29 redis-server
1 root 20 0 51740 3348 1956 S 0.0 0.1 16:10.43 systemd
2 root 20 0 0 0 0 S 0.0 0.0 0:00.74 kthreadd
4 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/0:0H
6 root 20 0 0 0 0 S 0.0 0.0 2:13.86 ksoftirqd/0
7 root rt 0 0 0 0 S 0.0 0.0 0:17.30 migration/0
8 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcu_bh
10 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 lru-add-drain
11 root rt 0 0 0 0 S 0.0 0.0 0:19.86 watchdog/0
12 root rt 0 0 0 0 S 0.0 0.0 0:18.78 watchdog/1
13 root rt 0 0 0 0 S 0.0 0.0 0:19.47 migration/1
14 root 20 0 0 0 0 S 0.0 0.0 1:41.17 ksoftirqd/1
16 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/1:0H
17 root rt 0 0 0 0 S 0.0 0.0 0:14.56 watchdog/2
18 root rt 0 0 0 0 S 0.0 0.0 0:17.09 migration/2
日志解释
第一行:系统的概况:当前时间、系统的运行时间、登录的用户数以及系统的平均负载。
平均负载有3个值:最近1分钟的、最近5分钟的和最近15分钟的平均负载。
通常,如果系统的负载值超过了2,就说明系统比较繁忙了。
第二行:进程概要信息——top 命令的输出中将进程叫作任务 (task):有多少进程处在运行、休眠、停止或是僵化状态
(僵化状态是指进程完成了,但父进程没有响应)。
第三行:CPU的概要信息。top 根据进程的属主(用户还是系统)和进程的状态(运行、空闲还是等待)将CPU利用率分成几类输出。
第四行:系统的物理内存:总共有多少内存,当前用了多少,还有多少空闲。
第五行:系统交换空间(如果分配了的话)的状态。
最后一部分显示了当前运行中的进程的详细列表,有些列跟ps 命令的输出类似。
PID :进程的ID。
USER :进程属主的名字。
PR :进程的优先级。
NI :进程的谦让度值。
VIRT :进程占用的虚拟内存总量。
RES :进程占用的物理内存总量。
SHR :进程和其他进程共享的内存总量。
S :进程的状态(D代表可中断的休眠状态,R代表在运行状态,S代表休眠状态,T代表跟踪状态或停止状态,Z代表僵化状态)。
%CPU :进程使用的CPU时间比例。
%MEM :进程使用的内存占可用内存的比例。
TIME+ :自进程启动到目前为止的CPU时间总量。
COMMAND :进程所对应的命令行名称,也就是启动的程序名。
top 展示中可操作显示内容,键入q退出
键入f 调整排序字段,显示和隐藏字段
键入d 调整刷新频率,回车生效
3,结束进程
在Linux中,进程之间通过信号 来通信。
信号 名称 描述
1 HUP 挂起
2 INT 中断
3 QUIT 结束运行
9 KILL 无条件终止
11 SEGV 段错误
15 TERM 尽可能终止
17 STOP 无条件停止运行,但不终止
18 TSTP 停止或暂停,但继续在后台运行
kill 命令可通过进程ID(PID)给进程发信号,默认发送的TERM 信号。
//-s 参数支持指定其他信号(用信号名或信号值)
kill -s HUP PID
//通过进程名来结束进程,killall 命令也支持通配符
killall http*