prctl

来自百合仙子's Wiki
跳转到导航 跳转到搜索

设置收割者进程

Linux 3.4 起[1],父进程可以使用 prctl 系统调用的 PR_{SET,GET}_CHILD_SUBREAPER(值分别为 36 和 37)选项来设置/取得子进程的收割者进程号。例如:

from cffi import FFI
ffi = FFI()
ffi.cdef('int prctl(int option, unsigned long arg2);')
C = ffi.dlopen(None)
C.prctl(36, 1)
# all subprocesses can't escape now.

systemd 的用户进程管理使用了这一手段。

参考资料