Process States Explanation
Greg 'groggy' Lehey
grog at FreeBSD.org
Mon Dec 18 14:55:08 PST 2006
[Format recovered--see http://www.lemis.com/email/email-format.html]
Single line paragraph
On Monday, 18 December 2006 at 1:06:13 -0600, Fr0zen wrote:
>
> Where can I get a good list of what each process state means?
That depends on what you mean by process state. The real definition
is in /usr/include/sys/proc.h, but there are now only three states:
enum {
PRS_NEW = 0, /* In creation */
PRS_NORMAL, /* threads can be run. */
PRS_ZOMBIE
} p_state; /* (j/c) S* process status. */
Maybe you mean the thread state, also described in the same file, but
I doubt it.
There are two other possibilities:
- The information reported by ps(1) in the STAT column. This is
described, not surprisingly, in the man page ps(1).
- The information reported by ps(1) in the MWCHAN column. This is a
name passed by a part of the kernel when it sleeps, so any process
with a value in MWCHAN is sleeping. The names are frequently
associated with the name of the function doing the sleeping. In
general, you need to understand the kernel code to make a lot of
sense of them. Still, if you do a 'ps al' you'll see a number of
names again and again:
ttyin Waiting for character input
select Waiting for a select() to complete
wait Waiting for something to happen, possibly time
limited (>= 1 second)
nanslp Waiting for < 1 second.
Maybe we should write up some of these.
Greg
--
When replying to this message, please copy the original recipients.
If you don't, I may ignore the reply or reply to the original recipients.
For more information, see http://www.lemis.com/questions.html
See complete headers for address and phone numbers.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-questions/attachments/20061218/53953e57/attachment.pgp
More information about the freebsd-questions
mailing list