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