Unique id of a process (not pid)

Pieter de Goeje pieter at degoeje.nl
Fri Jan 22 00:47:09 UTC 2010

On Thursday 21 January 2010 18:02:39 cronfy wrote:
> Hello,
> Is there any unique identifier of a process in FreeBSD (not PID)?
> I am trying to get list of processes and watch for changes
> with kvm_getprocs(). I want to catch every process start and exit (except
> those processes that were started and finished between calls to
> kvm_getprocs()).
> But between calls to this function one process may exit and be replaced
> with another process with the same pid and same command name. The only
> difference is a start time of processes. Looks like this is a solution, but
> process start time may change if system time was shifted (i. e. with
> ntpdate). I can track these shifts too, but it looks to be too complex.
> Is there any simpler way to identify a process? Thanks in advance.

I honestly don't know if there is such a unique identifier, but lacking that, 
perhaps you can achieve your goal using kqueue(2)'s EVFILT_PROC. It should do 
what you want and a lot more.

You could also try asking freebsd-hackers at .

Pieter de Goeje

More information about the freebsd-questions mailing list