Linux下怎样查看进程在哪,方法是什么
发布时间:2023-08-31 18:04:55 所属栏目:Linux 来源:转载
导读: 这篇文章主要讲解了“Linux下如何查看进程在哪,方法是什么”,文中的讲解内容简单、清晰、详细,对大家学习或是工作可能会有一定的帮助,希望大家阅读完这篇文章能有所收获
这篇文章主要讲解了“Linux下如何查看进程在哪,方法是什么”,文中的讲解内容简单、清晰、详细,对大家学习或是工作可能会有一定的帮助,希望大家阅读完这篇文章能有所收获。下面就请大家跟着小编的思路一起来学习一下吧。 查看方法:1、利用top命令,该命令可以显示进程在哪个CPU上运行,语法为“top -p 进程号”;2、利用taskset命令,该命令用于查看进程或线程运行在哪个CPU上,语法为“taskset -p 进程号”。 方法一:使用top命令 top 命令可以显示进程在哪个CPU上运行,可以连续监视随着时间的改变,该进程运行在哪个cpu上是否发生变化。 使用步骤: top -p [进程号],例如 top -p 3000 按下"F"键,使用上下键选择P = Last Used Cpu,并按下空格键,出现 “*”即代表选中,再按“q"退出。 ![]() 方法二:使用taskset命令 taskset可以查看具体某一进程(或 线程)运行在哪个cpu上,也可以使某个程序运行在某个或某些cpu上 taskset 参数选项: (1)-p, --pid :操作现有的PID,不启动新任务 (2)-c, --cpu-list :指定处理器的数字列表,而不是位掩码。列表可以包含多个项目,以逗号和范围分隔。例如,0、5、7、9 - 11。 1)显示进程运行的CPU: -p参数 例子1: [root@localhost ~]# taskset -p 21184 显示结果: pid 21184’s current affinity mask: ffffff 注:21184是进程编号。显示结果的ffffff实际上是二进制24个低位均为1的bitmask,每一个1对应于1个CPU,表示该进程在24个CPU上运行。 例子2: [root@localhost ~]# taskset -p 2030 显示结果: pid2030’s current affinity mask: f 注:说明sshd在4颗CPU上随机进行切换。 例子3: [root@localhost ~]# taskset -p 2726 显示结果: pid 2726’s current affinity mask: 3 注:显示的十进制数字3转换为2进制为最低两个是1,每个1对应一个cpu,所以进程运行在2个cpu上。 *注意:*cpu的标号是从0开始的,所以cpu1表示第二个cpu(第一个cpu的标号是0)。 关于换算方式 8个核心的CPU ID: 7 6 5 4 3 2 1 0 对应10的十进制数位: 128 64 32 16 8 4 2 1 十六进制的16个数是:0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F 对应每一个16进制的二进制位:0=0000,1=0001,2=0010,3=0011,4=0100,5=0101,6=0110,7=0111,8=1000,9=1001,A=1010, B=1011,C=1100,D=1101,E=1110,F=1111 那么例如出现pid 8987’s current affinity mask: ff ff是16进制,转换二进制:11111111,意思就是sshd在8个CPU上进行却换!所以对应每一个数值! 比如说16进制的40,那么转换二进制01000000,意思就是在第7块CPU上运作 (编辑:PHP编程网 - 黄冈站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- SBCL错误:在Linux机器上运行Maxima时“绑定堆栈耗
- 怎么在Linux上获得错误段的核心转储
- 在 Linux 上调整命令指南
- azure – Project Oxford Speech API的客户端ID
- linux中mysql数据库备份工具Xtrabackup的安装方法分享
- linux中find paths must precede expression错误如何解决
- CentOS系统yum源配置修改、yum安装软件包源码包出错解决办法
- Basic Data Structures and Algorithms in the Linux Kerne
- groupdel命令用于删除群组需要从系统上删除群组时
- 安装itunes无法将数值写入键解决方法
推荐文章
站长推荐