sleep 5000
在一个终端和第二个终端我正在运行:
ps -ef | grep sleep
然后我通过使用ppid在第二个终端中杀死了这个过程。然后它将关闭我运行sleep命令的第一个终端。它不会创建作为孤儿的睡眠命令。
$ ps -ef | grep sleep
trainee 4887 4864 0 17:05 pts/0 00:00:00 sleep 5000
trainee 4889 4264 0 17:05 pts/1 00:00:00 grep --color=auto sleep
kill -9 4864
为什么?
答案 0 :(得分:0)
据推测,睡眠的父母是你的外壳。当你杀了你的登录终止并且终端关闭时。
关于Orphan process的维基百科文章(部分),
孤立进程是父进程已完成或终止的计算机进程,但它仍然在自行运行。
和
进程可能会无意中孤立,例如父进程终止或崩溃时。大多数类Unix操作系统中的进程组机制可用于帮助防止意外孤立,其中与用户的shell协调将尝试使用SIGHUP进程信号终止所有子进程,而不是让它们继续像孤儿一样奔跑。