首先本篇 核心是 top 命令的 讲解,也会讲一些其他命令

快速导航

首先,要了解一些 常用命令

-- 我是谁 提示你当前的账号
whoami

-- 我在哪 提示你当前的位置
pwd

-- 任务管理器
top

第一行的内容:

  • 当前时间
  • 系统已运行的时间
  • 当前登录用户的数量
  • load average :相应最近5、10、15分钟内的平均负载 这个数值尽量控制在2以为

load average 后面的三个数分别是5分钟、10分钟、15分钟的负载情况,如果这个数除以逻辑CPU的数量,结果高于5的时候就表明系统在超负荷运转了

退出(任务管理器)

按一下 “q”键

查看帮助 (任务管理器)

按一下 “h”键

CPU 使用情况

数字“1” 可以查看/切换所有CPU单核情况 (不按1的话,显示的是所有cpu的使用率)

“t” 键,就可以切换CPU的状态

切换显示列及排序

进入top 命令 按一下 “f” 键

"↑"、"↓"键可以控制选择的目标

"d" 键或者 "空格"键 可以控制是否显示

"s" 是设置当前选中的字段排序 
下面图片有 whose current sort field is XXX  你选中那个 XXX就会变成你选择的

"q" 是退出,不进入设置显示 一样可以退出top 命令
途中

TOP命令 任务管理器内容详解

s 键是设置 按照那个字段排序

编号

  1. 进程及编程
  • PID 进程编号
  • PPID 父进程编号
  • PGRP 进程组编号
  • TPGID Tty进程组编号
  • TGID 线程组ID
  1. 用户及编号
  • UID 有效用户编号 (即展示出来的身份有可能不是真实身份)
  • USER 有效用户名
  • RUID 真实用户编号
  • RUSER 真实用户名称
  • SUID 已保存的用户编号
  • SUSER 已保存的用户名
  • GID 有效用户组编号
  • GROUP 有效用户组名称
  • SID 会话编号 (即可以说是用户会话,也可以说是进程的会话)

特性

  • S 进程状态 Process Status (R (running),S(Stoped) ,D(Dead),Z(Zombie)) 等
  • NI Nice value 友善度,好人值 (人好被插队)默认都是0,范围 [-20,19]
  • PR Priority (通过 20 + NI 计算出来的)其跟 NI 值一样的语义,也是友善度。值越低抢占的运行时间越多,其实际优先级就越高 (linux 099 的 pr 属性 realtime (rt) 任务,100139 (PR + 100)属性用户)
  • COMMAND 进程名或启动的命令行(通过 c命令切换)
  • ENVIRON 环境变量
  • TTY 使用的 Tty 没有的话表示为 ? 号。tty 提供交互的输入输出,没有 tty 的进程也就没有标准输入和输出

内存资源

  • CODE 可执行文件代码段大小即 text resident set(TRS) (KB)
  • DATA 数据段大小+栈空间大小 即 data resident set (DRS
    ) (KB)
  • RES Resident Size (KB) 进程占用的实际物理内存大小。对应 %MEM 列。RES = CODE + DATA
  • SHR Shared Memory (KB) 指明了 VIRT 中有多少是共享内存或库大小。
  • SWAP Swapped size(KB) 使用的交互分区大小。
  • USED RES + SWAP 大小
  • VIRT Virtual Image (KB) 虚拟内存分配大小,包含了其他文件(如代码,共享库,mmap等)映射,交换分区映射的地址区间大小。以虚拟内存的地址空间占用理解就对了,并不能准确反应物理内存的占用。

CPU 资源

  • TIME 进程占用 CPU 时间 (如果使用 S 命令启用累加模式(Cumulative Mode) 则包含其曾经的子进程。
  • TIME+ CPU Time, hundredths 比如 5:29.38 对应的 CPU 时间格式为: minutes:seconds.hundredths
  • %CPU CPU 使用率
  • P Last Used Cpu (SMP)

统计数据

  • nTH Number of Threads 线程数量
  • nDRT Number of Dirty pages 脏页数量
  • nMaj Major Page Faults (已请求的内存页还没有被加载,这是主要的应用申请内存产生的请求)
  • nMin Minor Page Faults (内存页已加载但是没有被MMU管理)
    namespace 作为一种用于隔离一组进程的资源手段,
  • nsIPC IPC namespace Inode (用于隔离IPC)
  • nsMNT MNT namespace Inode (用于隔离挂载点)
  • nsNET NET namespace Inode (用于隔离网络栈)
  • nsPID PID namespace Inode (用于隔离进程编号)
  • nsUSER USER namespace Inode (用于隔离用户)
  • nsUTS UTS namespace Inode (用于隔离域名和主机名)

切换CPU降序排列

进入top后,输入shift + p

切换内存占用降序排列

进入top后,输入shift + m

特殊说明:
上述文章均是作者实际操作后产出。烦请各位,请勿直接盗用!转载记得标注原文链接:www.zanglikun.com
第三方平台不会及时更新本文最新内容。如果发现本文资料不全,可访问本人的Java博客搜索:标题关键字。以获取全部资料 ❤