一,ps/pstree/top命令所属的rpm包

pstree所属的包

[root@blog ~]# whereis pstree
pstree: /usr/bin/pstree /usr/bin/pstree.x11 /usr/share/man/man1/pstree.1.gz

[root@blog ~]# rpm -qf /usr/bin/pstree
psmisc-23.1-3.el8.x86_64

ps所属的包

[root@blog ~]# whereis ps
ps: /usr/bin/ps /usr/share/man/man1/ps.1.gz /usr/share/man/man1p/ps.1p.gz

[root@blog ~]# rpm -qf /usr/bin/ps
procps-ng-3.3.15-1.el8.x86_64

top所属的包

[root@blog ~]# whereis top
top: /usr/bin/top /usr/share/man/man1/top.1.gz [root@blog ~]# rpm -qf /usr/bin/top
procps-ng-3.3.15-1.el8.x86_64

说明:这几个命令都是系统内置的,

如果误删除的话可以用dnf安装

说明:刘宏缔的架构森林是一个专注架构的博客,地址:https://www.cnblogs.com/architectforest

对应的源码可以访问这里获取: https://github.com/liuhongdi/

说明:作者:刘宏缔 邮箱: 371125307@qq.com

二,用ps查看线程

1,用-T显示线程

#-T:Show threads, possibly with SPID column:显示线程,可能会显示SPID列

#-p: 指定进程id

[root@blog ~]# ps -T -p 8240
PID SPID TTY TIME CMD
8240 8240 ? 00:21:58 redis-server
8240 8241 ? 00:00:00 redis-server
8240 8243 ? 00:00:00 redis-server
8240 8244 ? 00:00:00 redis-server

2,线程id:SPID和LWP的区别

说明:显示线程的几个参数:

THREAD DISPLAY
H Show threads as if they were processes.
-L Show threads, possibly with LWP and NLWP columns.
m Show threads after processes.
-m Show threads after processes.
-T Show threads, possibly with SPID column.

-L和-T的区别:字段名不同

一个是SPID

一个是LWP

LWP:轻量级进程(线程)的ID号。

NLWP:进程中的线程数量。

两者都是线程id

可以参考ps的手册:

[root@blog ~]# man ps

其中对于LWP的描述:

...
lwp LWP light weight process (thread) ID of the dispatchable entity (alias spid, tid)
...

说明: spid,tid,lwp都是线程id

SPID和LWP两者的区别在于:用-L显示LWP时能同时显示NLWP

3,用-L显示线程:

#-L:Show threads, possibly with LWP and NLWP columns

#-e:Select all processes:列出所有进程

#-f:Do full-format listing:显示完整的格式:

不加这个参数会有一些字段不显示,

增加此参数后字段显示完整

[root@blog ~]# ps -efL
UID PID PPID LWP C NLWP STIME TTY TIME CMD
root 8240 1 8240 0 4 Mar11 ? 00:21:58 /usr/local/soft/redis5/bin/redis-server 127.0.0.1:6379
root 8240 1 8241 0 4 Mar11 ? 00:00:00 /usr/local/soft/redis5/bin/redis-server 127.0.0.1:6379
root 8240 1 8243 0 4 Mar11 ? 00:00:00 /usr/local/soft/redis5/bin/redis-server 127.0.0.1:6379
root 8240 1 8244 0 4 Mar11 ? 00:00:00 /usr/local/soft/redis5/bin/redis-server 127.0.0.1:6379

可以看到NLWP这个数量是把主线程也计算在内了

三,用pstree查看线程

说明:pstree默认就打开线程的显示

#-p:显示进程id

[root@blog ~]# pstree -p

说明:加了-p参数,会把线程列出来,

否则只显示进程下线程的数量

...
├─redis-server(8240)─┬─{redis-server}(8241)
│ ├─{redis-server}(8243)
│ └─{redis-server}(8244)
...

#查看指定的进程id

[root@blog ~]# pstree -p 8240
redis-server(8240)─┬─{redis-server}(8241)
├─{redis-server}(8243)
└─{redis-server}(8244)

不想看线程也可以关掉

#-T: 关掉线程的显示

[root@blog ~]# pstree -T -p

四,用top查看线程

#-H  :Threads-mode operation 打开线程的显示

[root@blog ~]# top -H

说明:top启动后也可以用H来打开关闭线程模式

五,查看centos的版本:

[root@blog ~]# cat /etc/redhat-release
CentOS Linux release 8.0.1905 (Core)

centos8:linux平台查看线程(ps/pstree/top)的更多相关文章

  1. Linux下查看线程数的几种方法汇总

    Linux下查看线程数的几种方法汇总 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Linux下查看某个进程的线程数量 pstree命令以树状图显示进程间的关系(display ...

  2. 转:一个跨WINDOWS LINUX平台的线程类

     来源:http://blog.csdn.net/dengxu11/article/details/7232681 继Windows下实现一个CThread封装类之后,这里我再实现一个跨WINDOWS ...

  3. 2017-06-30(ps pstree top kill w killall pkill)

    ps(查看系统下所有进程) -a 显示一个终端的所有进程,除了会话引线 -u 显示进程的归属用户以及内存的使用情况 -x 显示没有控制终端的进程 -l 长格式显示,更加详细的信息 -e 显示所有的进程 ...

  4. (笔记)Linux 如何查看线程数最佳解决方案

    背景:很多学linux的人都会使用ps查看进程状态,却一直不清楚如何查看线程的状态. 方法:可使用ps -a 或 ps -T命令查看 一.使用ps -a命令查看 比如拿我的测试进程./lc300-le ...

  5. 进程,内存,管理 ps,pstree,top,free,vmstat,iftop,lsof,查看网速

    一些基础 不同进程之间,进行数据访问 同一主机:pipe 管道 socket   套接字文件 signal   信号 shm   shared memory semaphore 信号量,一种计数器 不 ...

  6. linux下查看线程数的几种方法

    1. cat /proc/${pid}/status 2.pstree -p ${pid} 3.top -p ${pid} 再按H   或者直接输入 top -bH -d 3 -p  ${pid} t ...

  7. 查看系统进程:ps、top

    1.ps命令:提供最近进程的快照.显示当前活跃进程的简要信息. 常见使用: (1)与grep命令配合查找是否有相应进程存活 ps -ef | grep ksmd ps -Af | grep ksmd ...

  8. Linux 下查看线程信息

    1. 使用 pstree -p PID ps aux | grep firefox | grep -v grepcharles  26058  0.0  0.0   4908  1152 ?      ...

  9. Linux - 进程管理,ps与top

    一个运行的程序,可能有多个进程. PID进程ID. UID启动进程的ID. 进程所属组GID. 进程的状态R运行.S睡眠.Z僵尸. 父进程管理子进程,父进程终止的时候子进程也会终止. 常用的组合为: ...

随机推荐

  1. [程序员代码面试指南]递归和动态规划-排成一条线的纸牌博弈问题(DP)

    题目 给定一个整型数组arr,代表数值不同的纸牌排成一条线.玩家A和玩家B依次拿走每张纸牌,规定玩家A先拿,玩家B后拿,但是每个玩家每次只能拿走最左或最右的纸牌,玩家A和玩家B都绝顶聪明.请返回最后获 ...

  2. 小BUG大原理 | 第一篇:重写WebMvcConfigurationSupport后SpringBoot自动配置失效

    一.背景 公司的项目前段时间发版上线后,测试反馈用户的批量删除功能报错.正常情况下看起来应该是个小BUG,可怪就怪在上个版本正常,且此次发版未涉及用户功能的改动.因为这个看似小BUG我了解到不少未知的 ...

  3. k8s volume存储卷

    k8s volume存储卷   介绍 volume存储卷是Pod中能够被多个容器访问的共享目录,kubernetes的volume概念,用途和目的与docker的volume比较类似,但两者不能等价, ...

  4. treemap使用了解

    参考了https://www.jianshu.com/p/d9ad7f6d75a0 https://www.zhuxiaodong.net/2018/collection-in-java-treema ...

  5. python-文本操作和二进制储存

    0x01 open方法 r read w write a append b byte test.txt内容为 yicunyiye wutang 读取test.txt f = open('test.tx ...

  6. Java随谈(二)对空指针异常的碎碎念

    本文适合对 Java 空指针痛彻心扉的人阅读,推荐阅读时间25分钟. 若有一些Java8 函数式编程的基础可以当成对基础知识的巩固. 一.万恶的null 今天,我们简单谈谈null的问题.因为null ...

  7. MATLAB中均值、方差、均方差的计算方法

    MATLAB中均值.方差.均方差的计算方法     1. 均值 数学定义: Matlab函数:mean >>X=[1,2,3] >>mean(X)=2 如果X是一个矩阵,则其均 ...

  8. python语言开发环境配置

    原作者:龙行天下-super 地址:https://www.cnblogs.com/longxingtianxia/p/10181901.html 要点:IDLE是一个轻量级python语言开发环境, ...

  9. PPT画成这样,述职答辩还能过吗?

    作者:小傅哥 博客:https://bugstack.cn 沉淀.分享.成长,让自己和他人都能有所收获! 一.前言 标题有点凶,但内容很干! 大部分程序员并不会画PPT,也梳理不出架构图.工作的年头虽 ...

  10. 不知如何创建UML电路图?看看本文

    Visual Paradigm是包含设计共享.线框图和数据库设计新特性的企业项目设计工具.现在你只需要这样单独的一款模型软件 Visual Paradigm就可以完成用UML设计软件,用BPMN去执行 ...