[问题] fork orphan process

楼主: yshihyu (yshihyu)   2017-05-11 22:34:07
http://www.cnblogs.com/Anker/p/3271773.html
我书上看到跟网络上看到范例都类似
在子行程sleep 变成 孤儿行程, 之后由 init pid = 1 去接管
https://gist.github.com/anonymous/f17087ea7aeaa7077ebac5ebd4768528 // 程式码
可是输出结果子行程sleep 5秒后是父行程不是 init
I am father process.
I am the child process.
pid: 23665 ppid:23664
I will sleep five seconds.
father process is exited.
pid: 23665 ppid:3829 // 这边是 3829 不是 init 的 1
child process is exited.
后来我查一下 ps aux , 3829 是 /sbin/upstart
作者: CP64 (( ̄▽ ̄#)﹏﹏)   2017-05-12 00:37:00
因为 upstart --user 有用 prctl 设定 `subreaper` 的 flag简单来说就是他代替了 init 去接管 orphanhttps://goo.gl/JPWp9E from unix.stackexchange.com这篇用 upstart orphan process 可以查到

Links booklink

Contact Us: admin [ a t ] ucptt.com