274 {
275
276 ssize_t cnt;
278 char buf[512];
279
280 std::ostringstream ost;
281
282 ost << "/proc/" << pid << "/stat";
283 std::string fname = ost.str();
284 if ( ( fd = open( fname.c_str(), O_RDONLY ) ) < 0 ) {
285 std::cerr << "Failed to open " << ost.str() << std::endl;
286 return;
287 }
288
289 lseek( fd, 0, SEEK_SET );
290 if ( ( cnt =
read( fd, buf,
sizeof( buf ) - 1 ) ) < 0 ) {
291 std::cout << "LINUX Read of Proc file failed:" << std::endl;
292 close( fd );
293 return;
294 }
295
296
297 if ( cnt > 0 ) {
298 buf[cnt] = '\0';
299 sscanf(
300 buf,
301
302
303 "%d %400s %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 "
304 "%lu %lu %lu %lu %lu %lu %lu",
311 }
312 close( fd );
313}
read(f, regex=".*", skipevents=0)
unsigned long long starttime