前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >top 命令详解

top 命令详解

作者头像
用户3147702
发布2022-06-27 12:58:47
3.1K0
发布2022-06-27 12:58:47
举报
文章被收录于专栏:小脑斧科技博客

1. 概述

top 命令是 linux 下常用的性能分析工具,能够实时监控系统中各进程的资源占用情况。 top 命令会动态显示,不停刷新,显示系统中 CPU 最敏感的任务列表。 当然,也可以根据用户指定按照 CPU 使用、内存使用和执行时间对任务进行排序。

2. TOP 前五行的统计信息

统计信息区前五行是系统整体的统计信息。

2.1. 第一行 — 任务队列信息

与 uptime 命令的执行结果相同,内容如下:

代码语言:javascript
复制
top - 20:45:10 up 10:08,  1 user,  load average: 0.00, 0.01, 0.05
任务队列信息

内容

意义

20:45:10

当前时间

up 10:08

系统运行时间(10小时08分钟)

1 user

当前登录用户数

load average: 0.00, 0.01, 0.05

系统负载(任务队列的平均长度),分别是1分钟、5分钟、15分钟到现在的平均值

  • 系统负载:0.00 到 1.00 之间表示非常通畅,任务无需等待,超过 1.00 表示超出负载,2.00 表示任务是负载能力的二倍
  • 正常情况下,系统负载应该在 0.7*n 以下(n 为 CPU 核心数)

2.2. 第二行 — 进程信息

代码语言:javascript
复制
Tasks: 105 total,   1 running, 104 sleeping,   0 stopped,   0 zombie
进程信息

内容

意义

105 total

进程总数

1 running

正在运行的进程数

104 sleeping

睡眠进程数

0 stopped

停止进程数

0 zombie

僵尸进程数

2.3. 第三行 — CPU信息

当有多个CPU时,内容可能会超过一行。

代码语言:javascript
复制
Cpu(s):  0.0%us,  0.1%sy,  0.0%ni, 99.9%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
CPU 信息

内容

意义

0.0%us

用户空间占CPU百分比

0.1%sy

内核空间占CPU百分比

0.0%ni

用户进程空间内改变过优先级的进程占用CPU百分比

99.9%id

空闲CPU百分比

0.0%wa

等待输入输出的CPU时间百分比

0.0%hi

硬件中断占CPU时间百分比

0.0%si

软件终端占CPU时间百分比

0.0%st

提供给虚拟化环境执行占CPU时间百分比

2.4. 第四行 — 内存信息

代码语言:javascript
复制
Mem:    288428k total,   257956k used,    30472k free,    40160k buffers
内存信息

内容

意义

288428k total

物理内存总量

257956k used

使用的物理内存总量

30472k free

空闲内存总量

40160k buffers

用作内核缓存的内存量

2.5. 第五行 — 内存交换区信息

代码语言:javascript
复制
Swap:  1046524k total,     3856k used,  1042668k free,    82000k cached
交换区信息

内容

意义

1046524k total

交换区总容量

3856k used

使用交换区的总量

1042668k free

空闲交换区总量

82000k cached

缓冲交换区总量

  • 缓冲交换区:内存中的内容已经被换出交换区而载入内存,该部分交换区对应的内存被换出时可以不必再对交换区写入

3. 进程信息

进程信息

列名

含义

PID

进程ID

PPID

父进程ID

RUSER

real user name

UID

进程所有者用户ID

USER

进程所有者用户名

GROUP

进程所有者组名

TTY

启动进程的终端名

PR

优先级

NI

nice值,负数表示高优先级,正数表示低优先级

P

最后使用的CPU,仅用于多 CPU 环境

%CPU

上次更新到现在的 CPU 时间占用百分比

TIME

进程使用的CPU时间总计(以秒为单位)

TIME+

进程使用的CPU时间总计(以1/100秒为单位)

%MEM

进程使用物理内存百分比

VIRT

进程使用虚拟内存总量(以KB为单位) VIRT=SWAP+RES

SWAP

进程使用的虚拟内存中,被换出的大小

RES

进程使用的未被换出的物理内存大小(以KB为单位) RES=CODE+DATA

CODE

可执行代码占用物理内存总大小

DATA

数据段+栈占用的物理内存总大小

SHR

共享内存总大小

nFLT

页面错误次数

nDRT

最后一次写入到现在,被修改过的页面数

S

进程状态

COMMAND

命令名/命令行

WCHAN

若进程在睡眠,则显示睡眠中的系统函数名

Flags

任务标志,参考 sched.h

4. top 中的命令

命令

意义

默认值

A

分屏显示

off(全屏显示)

d

刷新间隔

3秒

H

线程模式

off

I

Irix/Solaris模式切换

solaris 模式

p

监控某个PID

no(监控所有PID)

s

保护模式

off

B

是否支持粗体

on

l

显示任务队列信息

on

t

显示任务/cpu状态

on

m

显示内存/交换区状态

on

1

显示全部CPU核心状态

off

b

用背景突出显示

off

c

显示详细命令

off

i

显示僵尸进程

on

J

数字右对齐

on

j

列右对齐

off

R

按照 pid 从大到小排序

on

S

显示进程占用CPU的总时间

off

u

只显示某个用户ID

off

U

显示全部用户ID

off

x

突出显示用于排序的列

off

y

突出显示正在运行的任务

on

z

是否配色

off

h/?

显示help

 

Z

配置颜色

 

E/e

切换内存数值单位(K、M、G)

off

f/F

显示或隐藏某些信息

 

X

设置列宽

0

L/&

查找

 

</>

翻页

 

V

显示进程树

off

k

kill

 

r

重新指定进程优先级

 

W

写入配置文件

 

q/<ESC>

退出

 

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-10-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 小脑斧科技博客 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. 概述
  • 2. TOP 前五行的统计信息
    • 2.1. 第一行 — 任务队列信息
      • 2.3. 第三行 — CPU信息
        • 2.4. 第四行 — 内存信息
          • 2.5. 第五行 — 内存交换区信息
          • 3. 进程信息
          • 4. top 中的命令
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档