{
int cnt, fd;
char buf[512];
std::ostringstream ost;
ost << "/proc/" << pid << "/stat";
std::string fname = ost.str();
if((fd=open(fname.c_str(),O_RDONLY))<0) {
std::cerr << "Failed to open " << ost.str() << std::endl;
return;
}
lseek(fd,0,SEEK_SET);
if((cnt=read(fd,buf,sizeof(buf)))<0) {
std::cout << "LINUX Read of Proc file failed:" << std::endl;
close(fd);
return;
}
if(cnt>0) {
buf[cnt]='\0';
sscanf(buf,
"%d %s %c %d %d %d %d %d %lu %lu %lu %lu %lu %lu %lu %ld %ld %ld %ld %ld %ld %llu %lu %ld %lu %lu %lu %lu %lu %lu %lu %lu %lu %lu %lu",
);
}
close(fd);
}