ref: cbe4b116989c0bfec49b9ae7a1d9a85ead6648ae
dir: /sys/src/libc/9sys/getppid.c/
#include <u.h> #include <libc.h> int getppid(void) { char buf[32]; int f; snprint(buf, sizeof(buf), "/proc/%lud/ppid", (ulong)getpid()); f = open(buf, OREAD|OCEXEC); if(f < 0) return 0; memset(buf, 0, sizeof(buf)); read(f, buf, sizeof(buf)-1); close(f); return atol(buf); }