linux - 您会得到 'aux ps' 输出,其中仅打开 1 个终端,并且 a.out 执行了 2 次,但您只调用了一次。趋势中的一些东西

标签 linux process ps

enter image description here

问题如下:

  1. 从上图中我们怎么看出只有一个终端是打开的?

  2. 是否真的有一个父进程和两个子进程?你怎么能这么说呢?我们可以确定父级和子级的状态吗?

最佳答案

在 Linux 中,子进程或线程(轻量级子进程)经常会出现在具有完全相同签名的父进程下方,看起来就像有两个或多个相同的进程在运行。

如果你做了

 ps -efH | grep a.out 

您应该看到该树结构,您也可以通过打开 TreeView (F5)在 htop 中观察它。或者做一个

 pstree -clap <pid of parent process>

您也可以使用父终端进程,它会给您该进程及其所有子进程。因此,您将要从终端运行 a.out do

 echo $$ 

这将为您提供其进程,启动 a.out 然后在另一个终端中使用您刚刚在 pstree 命令中获得的进程 ID。

关于linux - 您会得到 'aux ps' 输出,其中仅打开 1 个终端,并且 a.out 执行了 2 次,但您只调用了一次。趋势中的一些东西,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39104167/

相关文章:

c - 如何删除所有现有的 git 文件,以便我可以更新我自己的存储库而不会出现 fatal error ?

c - 使用 setpgid() 对子进程进行分组

bash ps 打印有关进程名称的信息

linux - 允许容器的非 root 用户执行需要功能的二进制文件

linux - 如何破坏 tar.gz 的 header 以进行测试

linux - Telnet 到 localhost 被拒绝,但是通过 IP 可以吗?

c# - 当父 NT 服务被终止/崩溃时终止子进程

c - 如何使进程交替?

Bash - 一个脚本的两个进程

linux - 为什么 pgrep 找不到这个进程?