Show which CPU is executing a thread?

Dan Nelson dnelson at
Mon Jun 1 16:44:53 UTC 2009

In the last episode (Jun 01), nocturnal said:
> 2009/6/1 nocturnal <swehack at>
> > I've been searching the web, all i want is to show which CPU is
> > currently executing a certain thread.  Is this info available to me in
> > user space?  Which manuals should i read to do this?
> >
> > I know Solaris has something about lwp that can show the last CPU used,
> > i think.  I would be happy if FreeBSD had something similar so it
> > doesn't have to be very live or accurate.
> >
> > Thank you in advance for any info or hints.
> I'm more after a programming API for this and when i search the web all i
> find is people saying it cannot be done on FreeBSD in userspace, yet.
> Solaris and Linux can do it but FreeBSD doesn't have this in user space.

FreeBSD can and does.  See the kvm_getprocs manpage, and take a look at
/usr/src/bin/ps/ps.c or /usr/src/usr.bin/top/machine.c to see how it's used.
> Is anyone working on it, what is the status? Will it be part of SMPng?

SMPng went into FeeeBSD 5.0.. you must be reading some old mailing list
archives :)

	Dan Nelson
	dnelson at

More information about the freebsd-smp mailing list