ref: 41fb60c4bc05b9e85c2e4495e15a9b17ba3e8ada
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); }