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