get accounting info for running process

cronfy cronfy at
Thu Nov 19 17:01:47 UTC 2009

>> Is it possible to find out how much a process have used CPU user 
>> time/system time/IO operations for now by it's pid? Like in sa, but for 
>> running process.

Dan, Mel, thanks for your answers. I examined 'ps' sources and decided 
to use  kvm_getprocs() and rusage structure.

I am trying to create a daemon that would report system accounting stats 
for every X seconds, let's say 10.  'sa' reports about terminated 
processes only, but it would be nice to have more detailed system usage 
stats per user for a given time interval (i.e. last 10 seconds), 
including tasks that are not finished at the moment of querying.

I can achieve this by querying list of processes each 10 seconds and 
producing diffs between previous and current list, saving these to some 
log and combining data with /var/account/acct file.

The only thing I do not want to do is to invent a wheel ;-) I googled 
much for such solutions, but did not find any. May be someone knows 
existing products that has this functionality already?

Thanks in advance.

More information about the freebsd-questions mailing list