System Administration Guide
Appendix D, Using the crash(ADM) diagnostic tool

Examining the process table

Examining the process table

The proc command of crash displays information held in the kernel's process table. It shows process information similar to that displayed by the -elf options of the ps(C) command. The following example shows proc being used to display the first eight slots of the process table:

> proc 0..7 
   0 s    0    0    0   0  95   0 runout           sched        load sys lock nwak
   1 s    1    0    0   0  66   1 u                init         load
   2 s    2    0    0   0  95   0 kspt1+0x10bbdc   vhand        load sys lock nwak nxec
   3 s    3    0    0   0  81   0 kspt1+0xfe64c    bdflush      load sys lock nwak nxec
   4 s    4    1    1   0  95   0 vm_dma_end+0x11cc8 kmadaemon  load sys lock nwak nxec
   5 s    5    1   11   0  95   0 kspt1+0xcbdc8    htepi_daemon load sys lock nwak nxec
   6 s    6    1   16   0  95  22 pbintrpool       strd         load sys lock nwak nxec
   7 s  289    1  289   0  73   0 proc+0x968       ksh          load

The kernel daemons sched (swapper), init (process spawner), vhand (page handler), bdflush (buffer flusher), kmadaemon (kernel memory allocator), always occupy slots 0 through 4. htepi_daemon (HTFS filesystem daemon), and strd (STREAMS daemon) may not be present on your system.

Output columns of interest include:

Shows the process status. These are lowercase equivalents of the process state indicators documented on the ps(C) manual page. For example, s means the process is paused or sleeping on some resource, r represents a process that is ready to run, and o is a process that is running on a CPU.

Shows the priority of the process. Note that on configurations that use the fixed priority scheduler, 127 is the highest priority and 0 is the lowest priority. User mode processes have priorities from 0 to 65, system mode processes have priorities from 66 to 95, and fixed priority schedule process priorities range from 96 to 127. (Priority 51 is the default priority for user-level processes.)

Shows the event (symbol name and offset, or an address) on which a process is paused or sleeping.

Shows the process flags. For definitions of these flags, see the listing in the <sys/proc.h> header file. Note that crash displays the flags as all lowercase; it also removes the initial ``S'' and some additional letters. For example, the flag shown by crash as nxec and nwak are defined as SNEXEC and SNWAKE in <sys/proc.h>.