本文来自网络,著作权归原创作者所有,不做任何商业用途。

一、四大名捕

四大名捕,最初出现于温瑞安创作的武侠小说,是朝廷中正义力量诸葛小花的四大徒弟,四人各怀绝技,分别是轻功暗器高手“无情”、内功卓越的高手“铁手”、腿功惊人的“追命”和剑法一流的“冷血”。

本文四大名捕由 linux 命令所出演:

无情:ps 出演 铁手:dstat 出演 追命:top 出演 冷血:htop 出演

二、进程相关基础知识

介绍四大名捕之前先介绍一下进程相关的基础知识,话不多说,看图。

 

(查看大图)

三、轻功暗器高手“无情” [PS]

ps:用于显示当前进程的状态(非动态) ps [options]:

选项有三种风格: 1、UNIX风格,必须在选项前面加“-” 2、BSD风格,选项前不能加“-” 3、GNU风格,选项前为两个“-”

常用组合之一:aux

  • a:所有与终端相关的进程
  • x:所有与终端无关的进程
  • u:以用户为中心组织进程状态信息显示
 

CPU%:cpu时间占用比率

MEM%:内存占用百分比

VSZ:virtual size虚拟内存集;

RSS:Resident Size,常驻内存集;

STAT:

  • R:running 运行
  • S:interruptable sleeping 可中断睡眠
  • D:uninterruptable sleeping 不可中断睡眠
  • T:Stopped 停止
  • Z:zombie 僵死态
  • +:前台进程
  • l:多线程进程
  • N:低优先级进程
  • <:高优先级进程
  • s:session leader 进程领导者

常用组合之二:-ef

  • -e:显示所有进程
  • -f:显示完整格式的进程信息
 

常用组合之三:-eFH

-F:显示完整格式的进程信息;

  • C: cpu utilization cpu占用百分比
  • PSR:运行于哪颗CPU之上

-H:以层级结构显示进程的相关信息;

 

常用组合之四:-eo, axo

o field1, field2,…:自定义要显示的字段列表,以逗号分隔

常用的field:pid, ni, priority, psr, pcpu, stat, comm, tty, ppid, rtprio

  • pid:进程的pid号
  • ni:nice值
  • priority:优先级
  • psr:运行在那颗cpu
  • pcpu:cpu利用率
  • ppid:父进程的id号
  • rtprio:实时优先级

四、内功卓越的高手“铁手”[dstat]

dstat:系统资源统计命令(动态) dstat [-afv] [options..] [delay [count]]

 

常用选项:

  • -c, –cpu:显示cpu相关信息;
  • -C #,#,…,total:显示第一个cpu,第二个cpu或者总共的
  • -d, –disk:显示磁盘的相关信息
  • -D sda,sdb,…,tobal:显示指定硬盘设备,总空间
  • -g:显示page相关的速率数据;
  • -m:Memory的相关统计数据
  • -n:Interface的相关统计数据;
  • -p:显示process的相关统计数据;
  • -r:显示io请求的相关的统计数据;
  • -s:显示swapped的相关统计数据;
 

–tcp:显示tcp套接字

–udp:显示udp连接

–raw:显示裸套接字

–socket:套接字

–ipc:进程间通信信息

 

–top-cpu:显示最占用CPU的进程;

–top-io:最占用io的进程;

–top-mem:最占用内存的进程;

 

五、腿功惊人的“追命”[top]

top:列出inux进程 top为动态显示进程

 

top命令个参数具体含义:

top – 14:58:34 up 5:28, 1 user, load average: 0.01, 0.02, 0.05

  • 14:58:34:当前时间
  • up 5:28:运行时长
  • 1 user:登录当前系统上的用户数
  • load average: 0.01, 0.02, 0.05:平均负载(等待运行的队列长度的负载)

Tasks: 353 total, 2 running, 351 sleeping, 0 stopped, 0 zombie

  • Tasks:任务
  • 353 total:一共运行多少进程
  • 2 running:几个处于运行
  • 351 sleeping:多少个睡眠
  • 0 stopped:多少个停止
  • 0 zombie:多少个僵死

%Cpu(s): 0.0 us, 0.7 sy, 0.0 ni, 99.3 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st

  • %Cpu:cpu占用百分比
  • 0.0 us:用户空间占用的百分比
  • 0.7 sy:内核空间占用时间的百分比
  • 0.0 ni:对nice调整占用的内存百分比
  • 99.3 id:空闲百分比
  • 0.0 wa(wait):等待IO完成所消耗的百分比
  • 0.0 hi:处理硬件中断所占用的百分比
  • 0.0 si:处理软件中断所占用的百分比
  • 0.0 st:被偷走的百分比(虚拟化程序)

KiB Mem : 1001332 total, 681052 free, 139844 used, 180436 buff/cache

  • KiB Mem:内存空间占用,以KB为单位:
  • 1001332 total:总内存空间
  • 681052 free:剩余内存空间
  • 139844 used:已用内存空间
  • 180436 buff/cache:用于缓存和缓冲的内存空间

KiB Swap: 2098172 total, 2098172 free, 0 used. 698100 avail Mem

  • KiB Swap:swap空间占用,以KB为单位
  • 2098172 total:总空间
  • 2098172 free:剩余空间
  • 0 used:已用空间
  • 698100 avail Mem :有效swap大小

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND

3077 root 20 0 146276 2256 1420 R 1.7 0.2 0:02.91 top

  • PID:用户pid
  • USER:用户名称
  • PR:优先级
  • NI:nice值
  • VIRT:virtual size虚拟内存集
  • RES:常驻内存集
  • SHR:共享内存空间
  • S:当前状态
  • %CPU:占据CPU百分比
  • %MEM:占据MEM百分比
  • TIME+:运行时长
  • COMMAND:命令

top内排序:

  • P:以占据CPU百分比排序
  • M:以占据内存百分比排序
  • T:累积占用CPU时间排序

首部信息:

uptime信息:l命令

# 第一行没有显示

 

tasks及cpu信息:t命令

# 可以禁用显示硬盘及cpu相关消息

 

内存信息:m命令

# 可以将内存使用率用|||显示 或者白空格显示

 

退出命令:q

修改刷新时间间隔:s

 

终止指定的进程:k

 

选项:

  • -d #:指定刷新时间间隔,默认为3秒;
  • -b:以批次方式显示;
  • -n #:显示多少批次;

六、剑法一流“冷血”[htop]

htop:交互式进程查看器 htop [-dus]

 

# htop 是一个非常强大的工具,下面从F1到F10可以看到具体的参数信息。

# F1 :帮助信息

 

选项:

  • -d #:指定延迟时间间隔
  • -u UserName:仅显示指定用户的进程
  • -s COLUME:以指定字段进行排序

常用子命令:

  • l:显示选定的进程打开的文件列表
  • s:跟踪选定的进程的系统调用
  • t:以层级关系显示各进程状态
  • a:将选定的进程绑定至某指定的CPU核心

# 此处可以添加指定项到显示屏幕上面,显示方式可以是[Bar] [Text] [Graph] [LED]

Linux 进程管理之四大名捕的更多相关文章

  1. Linux进程管理之“四大名捕”

    一.四大名捕 四大名捕,最初出现于温瑞安创作的武侠小说,是朝廷中正义力量诸葛小花的四大徒弟,四人各怀绝技,分别是轻功暗器高手“无情”.内功卓越的高手“铁手”.腿功惊人的“追命”和剑法一流的“冷血”本文 ...

  2. Linux进程管理四大工具ps \dstat\ top\ htop

    Linux进程管理之“四大名捕” 一.四大名捕 四大名捕,最初出现于温瑞安创作的武侠小说,是朝廷中正义力量诸葛小花的四大徒弟,四人各怀绝技,分别是轻功暗器高手“无情”.内功卓越的高手“铁手”.腿功惊人 ...

  3. Linux进程管理子系统分析【转】

    本文转载自:http://blog.csdn.net/coding__madman/article/details/51298732 Linux进程管理: 进程与程序: 程序:存放在磁盘上的一系列代码 ...

  4. 12个Linux进程管理命令介绍(转)

    12个Linux进程管理命令介绍 [日期:2015-06-02] 来源:Linux中国  作者:Linux [字体:大 中 小]   执行中的程序在称作进程.当程序以可执行文件存放在存储中,并且运行的 ...

  5. Linux进程管理知识整理

    Linux进程管理知识整理 1.进程有哪些状态?什么是进程的可中断等待状态?进程退出后为什么要等待调度器删除其task_struct结构?进程的退出状态有哪些? TASK_RUNNING(可运行状态) ...

  6. Linux性能及调优指南(翻译)之Linux进程管理

    本文为IBM RedBook的Linux Performanceand Tuning Guidelines的1.1节的翻译原文地址:http://www.redbooks.ibm.com/redpap ...

  7. Linux进程管理专题

    Linux进程管理 (1)进程的诞生介绍了如何表示进程?进程的生命周期.进程的创建等等? Linux支持多种调度器(deadline/realtime/cfs/idle),其中CFS调度器最常见.Li ...

  8. [转帖]十二 个经典 Linux 进程管理命令介绍

    https://www.cnblogs.com/swordxia/p/4550825.html 接了 http referer 头 没法显示图片 可以去原始blog 里面去查看.   随笔- 109  ...

  9. Linux进程管理 (1)进程的诞生

    专题:Linux进程管理专题 目录: Linux进程管理 (1)进程的诞生 Linux进程管理 (2)CFS调度器 Linux进程管理 (3)SMP负载均衡 Linux进程管理 (4)HMP调度器 L ...

随机推荐

  1. 阿里2015校招面试回忆录(成功拿到offer)

    1. 引言 继上次“百度2015校园招聘面试题回忆录(成功拿到offer)”文章过后,大家都希望除了题目之外,最好能给出自己当时的回答情况,看看有没有什么回答技巧,这样更有参考价值. 嗯,建议的很对, ...

  2. golang实现unicode码和中文之间的转换

    将中文转换为unicode码,使用golang中的strconv包中的QuoteToASCII直接进行转换,将unicode码转换为中文就比较麻烦一点,先对unicode编码按\u进行分割,然后使用s ...

  3. Java中数据类型转换大全(个人总结)

    一.字符串转换为其他类型 1.将字符串转化为int型 (1)方法一 int i = Integer.parseInt(String str); (2)方法二 int i = Integer.value ...

  4. Spring读取配置文件 @Value

    最近在学习Spring如何读取配置文件,记录下方便自己也方便别人: 大致分为两类吧,一种的思路是利用Spring的beanFactoryPostProcessor读取配置文件内容到内存中,也就是应用程 ...

  5. [转]centos7 移动mysql5.7.19 数据存储位置

    本文转自:https://blog.csdn.net/chpllp/article/details/78211351 场景:随着数据量的增加,mysql所在的磁盘已占满,需要将data移动到空间较大的 ...

  6. ADO.NET 【攻击及防御】

    sql字符串注入攻击 SQL注入攻击是黑客对数据库进行攻击的常用手段之一.SQL注入的手法相当灵活 SQL注入攻击会导致的数据库安全风险包括:刷库.拖库.撞库. 一般来说,SQL注入一般存在于形如:H ...

  7. Mysql替换两个字段的内容(字符串)

    问题:用一条sql来替换两个字段的内容 表内容:  待优化sql: update student set name=CONCAT(name,dname),dname=SUBSTR(name FROM ...

  8. 桥接模式(Bridge)

    1.概念 桥接模式将抽象部分与它的实现部分分离,使它们都可以独立地变化,属于结构性模式的一种. 2.模式结构 Abstraction(抽象类):定义抽象接口,拥有一个Implementor类型的对象引 ...

  9. Hbuilder配置识别逍遥安卓模拟器

    最近在公司,需要开发一款智能家居APP,用到MUI框架,首先就是环境搭建,写好的APP页面,怎么跑在模拟器上运行? 我的开发环境: HBuilder版本:9.0.2.201803061935 逍遥安卓 ...

  10. HDU4565(SummerTrainingDay05-C 矩阵快速幂)

    So Easy! Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Su ...