linux使用 top命令
- 显示当前系统的进程信息、CPU使用情况、内存占用情况
- 交互操作:使用键盘的上下方向键、PgUp\PgDn键滚动查看进程列表和系统信息
- 刷新频率:默认每隔一秒刷新一次显示内容,按
d
键修改刷新间隔 - 进程排序:可以按键盘上的
P
、M
、T
等键来按不同的字段对进程列表进行排序-
P: 按照 CPU 使用率进行排序,将 CPU 使用率最高的进程显示在列表的顶部
-
M: 按照内存占用情况进行排序,将内存占用最高的进程显示在列表的顶部
-
T: 按照运行时间进行排序,将运行时间最长的进程显示在列表的顶部
-
- 进程管理:可以按键盘上的
k
、r
、q
等键来杀死进程、重新启动进程、退出top
等操作-
k: 杀死进程。按下
k
键后,会提示输入要终止的进程ID,输入进程ID并按回车键即可终止相应进程 -
r: 重新启动进程。按下
r
键后,会提示输入要重新启动的进程ID,输入进程ID并按回车键即可重新启动相应进程 -
q: 退出
top
。按下q
键后,会退出top
工具,返回到命令行界面
-
![image-20240422092314160](https://img-blog.csdnimg.cn/direct/c7b95b9eed3943fba7035909b69e27fb.png)
前五行是系统整体的统计信息:
- 系统运行状态和平均负载,与uptime命令结果相同
- 系统当前时间—系统运行时间(up x days,mm:ss)—当前登陆用户数量—平均负载(1分钟、5分钟、15分钟的平均负载值)
- 单核CPU:0.0表示没有负荷,1.0满负荷,超过1.0为超负荷,理想值为0.7
- 多核CPU:CPU核数*理想值0.7 = 理想负荷
- 系统当前时间—系统运行时间(up x days,mm:ss)—当前登陆用户数量—平均负载(1分钟、5分钟、15分钟的平均负载值)
- Tasks 进程相关信息
- Tasks:进程总数,正在运行的进程数,睡眠的进程数,停止的进程数,僵尸进程数
- CPU相关,多核CPU可以按1展开或关闭显示各核CPU信息,两核示例:
-
-
- us(User CPU time):用户空间占⽤CPU百分比
- sy(System CPU time):内核空间占⽤CPU百分比
- ni(Nice CPU time):用户进程空间内改变过优先级的进程占⽤CPU百分比
- id(Idle CPU time):空闲CPU百分比
- wa(IO-wait CPU time):等待输入输出的CPU百分比
- hi(Hardware IRQ):CPU服务于硬件中断所耗的时间总额
- si(Software IRQ):CPU服务软中断所耗费的时间总额
- st(Steal time):虚拟机被hypervisor偷去的CPU时间
-
- Mem 内存相关信息Memory
- 物理内存总量—使用的物理内存量—空闲内存总量—用作内核缓存的内存量
- Swap交换分区相关信息
- 交换区总量—使用的交换区量—空闲的交换区总量—缓冲的交换区量
后面的表格信息,通过在top命令中按f
查看列信息,带*的是默认列
- PID:进程id
- USER:进程所有者的用户名
- PR:优先级
- NI:nice值,负值表示高优先级,正值表示低优先级
- VIRT:进程使用的虚拟内存总量
- RES:进程使用的物理内存大小,RES在VIRT中,优先关注RES
- SHR:共享内存大小
- S:进程状态,D(不可终端的睡眠状态),R(运行),S(睡眠),T(跟踪/停止),Z(僵尸)
- %CPU:CPU时间占用比
- %MEM:使用的物理内存百分比
- TIME+:进程使用CPU时间总计
- COMMAND:所属的程序或服务名
![image-20240422174347501](https://img-blog.csdnimg.cn/direct/7212888f85a945e6af5e11da07243ace.png)