Search code examples
linuxprocessoperating-systempid

Programmatically get parent pid of another process?


I tried google, but found getppid() which gets the parent pid of the current process.

I need something like getppid(some_other_pid), is there such a thing? Basically takes the pid of some process and returns the parent process' pid.


Solution

  • I think the simplest thing would be to open "/proc" and parse the contents.

    You'll find the ppid as the 4th parameter of /proc/pid/stat

    In C, libproc has a get_proc_stats function for parsing that file: see Given a child PID how can you get the parent PID for an example.