top linux下的任务管理器
原文链接:https://linuxtools-rst.readthedocs.io/zh_CN/latest/tool/top.html
top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。top是一个动态显示过程,即可以通过用户按键来不断刷新当前状态.如果在前台执行该命令,它将独占前台,直到用户终止该程序为止.比较准确的说,top命令提供了实时的对系统处理器的状态监视.它将显示系统中CPU最“敏感”的任务列表.该命令可以按CPU使用.内存使用和执行时间对任务进行排序;而且该命令的很多特性都可以通过交互式命令或者在个人定制文件中进行设定.
top 和 ps 的最大区别就在于 top 能对进程进行实时的监控,而 ps 命令显示的是执行该命令时的快照
可以用 top 命令查看服务器负载,例如 可以通过 CPU 的 idle 指标(空闲资源占比)来看 CPU 的负载,idle越小,说明服务器负载越大。
第一行:
- 16:30:04 系统当前时间
- 3 days, 5:13 系统开机到现在经过了多少时间
- 1 user 当前一个用户在线
- load average: 0.00, 0.01, 0.00:系统1分钟,5分钟,15分钟的CPU负载信息。
第二行:
- Tasks: 任务
- 95 total,就是当前有95个任务,也就是 87 个进程。
- 2 running:2个进程正在运行。
- 93 sleeping:93个进程正在睡眠。
- 0 stopped:停止的进程数。
- 0 zombie:僵死的进程数(僵尸进程)
第三行:
- %Cpu(s):表示这一行显示 CPU 总体信息。
- 1.0 us : (user)用户态进程占用 CPU 时间百分比,不包含 renice 值为负的任务占用的 CPU 的时间。
- 1.0 sy:(system)内核占用 CPU 时间百分比
- 0.0 ni:(nice)用户进程空间内改变过优先级的进程占用 CPU 的百分比
- 97.0 id:(idle)空闲 CPU 时间百分比(服务器负载情况主要看这个指标)
- 1.0 wa:(iowait)等待 I/O 的 CPU 时间百分比
- 0.0 hi:(hardware irq)CPU硬中断时间百分比
- 0.0 si:(steal time)CPU软中断时间百分比
注:这里显示数据是所有 CPU 的平均值,如果想看每一个 cpu 的处理情况,按 1 即可;折叠,再次按 1;
第四行:
- KiB Mem : 内存的意思
- 2047860 total:物理内存总容量 共 247860 KB ≈ 2G
- 71688 free:空闲的物理内存量 ≈ 70M
- 497464 used:使用的物理内存量
- 1478708 buff/cache:用作内核缓存的物理内存量。
第五行:
- KiB Swap:交换空间
- 0 total:交换区总量
- 0 free:空闲的交换区量
- 0 used:使用的交换区量
- 1350408 avail Mem:可用内存空间
进程信息:
- PID :进程ID
- USER:进程所有者
- PR:(priority)进程的优先级别,越小越优先被执行
- NI:nice 值
- VIRT:(virtual)进程占用的虚拟内存,
- RES:进程占用的物理内存
- SHR:进程使用的共享内存
- S: 进程的状态。S表示睡眠,R表示正在运行,Z表示僵死状态,N表示该进程优先值为负数。
- %CPU:进程占用 CPU 的使用率
- %MEM:进程使用的物理内存和总内存的百分比
- TIME+:该进程启动后占用的总的CPU时间,即占用 CPU 使用时间的累加值。
- COMMAND:进程启动命令名称
top命令交互操作:
- q:退出top命令
- 空格 立即刷新
- s:设置刷新时间间隔
- c:显示命令完全模式
- t:显示或隐藏进程和CPU状态信息
- m:显示或隐藏内存状态信息
- l:显示或隐藏uptime信息
- f:增加或减少进程显示标志
- S:累计模式,会把已完成或退出的子进程占用的CPU时间累计到父进程的MITE+
- P:按%CPU使用率排行
- T:按TIME+排行
- M:按%MEM排行
- u:指定显示用户进程
- r:修改进程renice值
- kill:进程
- i:只显示正在运行的进程
- W:保存对top的设置到文件^/.toprc,下次启动将自动调用toprc文件的设置。
- h:帮助命令。