FreeBSD Top States

转自:http://blog.csdn.net/fcoolx/article/details/4412196

select

Process is blocked in the select(2) syscall. Usually means it's waiting for external input (network , terminal, file updated, things like that). select only supports waiting for something related to a file descriptor (e.g., socket, tty, vnode).

 
nanslp

Process is blocked in the nanosleep(2) syscall, which is an explicit request to pause for a certain amount of time. Hard to generalize this one. It should be infrequent, or it might be used by something implementing its own polling.

 
kserel

Process is blocked waiting for an event to trigger a KSE upcall. This isn't easy to explain in a few words, but you can read kse(2) for most of the relevant details. Usually means the process is waiting for external input (similar to select).

 
RUN

Process is ready to run but has been suspended while another process is running.

 
pause

Process is blocked in the pause(2) or sigsuspend(2) syscall. It might be waiting for a signal, or you might see this if another thread is running and the main thread is waiting for all other threads to end.

 
lockf

Process is blocked waiting for a file lock to be released. Could be an flock(2) lock or an fcntl(2)/F_SETLK record lock.

 
kqread

Process is blocked in the kqueue(2) syscall. This is similar to select(2)--waiting for external input. kqueue is more efficient than select and supports several other events that can be waited on.

 
sbwait

Process is waiting for a socket buffer to be filled or emptied.

 
pipered

Process is waiting for data to arrive on a pipe ("rd" is short for read).

 

tips:

引用自:http://www.webhostingtalk.com/showthread.php?t=583672

posted on 2016-01-07 13:28  清明-心若淡定  阅读(294)  评论(0编辑  收藏  举报