4.3BSD-Reno/share/man/cat8/pstat.0

Compare this file to the similar file:
Show the results in this format:




PSTAT(8)		      1990			 PSTAT(8)



NNAAMMEE
     pstat - print system facts

SSYYNNOOPPSSIISS
     ppssttaatt --aaiixxppttuuffTT [ ssuubbooppttiioonnss ] [ ssyysstteemm ] [ ccoorreeffiillee ]

DDEESSCCRRIIPPTTIIOONN
     _P_s_t_a_t interprets the contents of certain system tables.  If
     _c_o_r_e_f_i_l_e is given, the tables are sought there, otherwise in
     /_d_e_v/_k_m_e_m. The required namelist is taken from /_v_m_u_n_i_x
     unless _s_y_s_t_e_m is specified.  Options are

     --aa    Under --pp, describe all process slots rather than just
	   active ones.

     --ii    Print the inode table with the these headings:

     LOC   The core location of this table entry.
     FLAGS Miscellaneous state variables encoded thus:
	   L	locked
	   U	update time (_f_s(5)) must be corrected
	   A	access time must be corrected
	   W	wanted by another process (L flag is on)
	   C	changed time must be corrected
	   S	shared lock applied
	   E	exclusive lock applied
	   Z	someone waiting for a lock
	   M	contains modifications
	   R	has a rename in progress
     CNT   Number of open file table entries for this inode.
     DEV   Major and minor device number of file system in which
	   this inode resides.
     RDC   Reference count of shared locks on the inode.
     WRC   Reference count of exclusive locks on the inode (this
	   may be > 1 if, for example, a file descriptor is
	   inherited across a fork).
     INO   I-number within the device.
     MODE  Mode bits, see _c_h_m_o_d(2).
     NLK   Number of links to this inode.
     UID   User ID of owner.
     SIZ/DEV
	   Number of bytes in an ordinary file, or major and
	   minor device of special file.

     --xx    Print the text table with these headings:

     LOC   The core location of this table entry.
     FLAGS Miscellaneous state variables encoded thus:
	   T	_p_t_r_a_c_e(2) in effect
	   W	text not yet written on swap device
	   L	loading in progress
	   K	locked



Printed 7/27/90               June				1






PSTAT(8)		      1990			 PSTAT(8)



	   w	wanted (L flag is on)
	   P	resulted from demand-page-from-vnode exec format
		(see _e_x_e_c_v_e(2))

     DADDR Disk address in swap, measured in multiples of 512
	   bytes.

     CADDR Head of a linked list of loaded processes using this
	   text segment.

     RSS   Size of resident text, measured in multiples of 512
	   bytes.

     SIZE  Size of text segment, measured in multiples of 512
	   bytes.

     VPTR  Core location of corresponding vnode.

     CNT   Number of processes using this text segment.

     CCNT  Number of processes in core using this text segment.

     FORW  Forward link in free list.

     BACK  Backward link in free list.

     --pp    Print process table for active processes with these
	   headings:

     LOC   The core location of this table entry.
     S	   Run state encoded thus:
	   0	no process
	   1	waiting for some event
	   3	runnable
	   4	being created
	   5	being terminated
	   6	stopped (by signal or  under trace)
     F	   Miscellaneous state variables, or'ed together (hexade-
	   cimal):
	   0001     loaded
	   0002     the scheduler process
	   0004     locked for swap out
	   0008     swapped out
	   0010     traced
	   0020     used in tracing
	   0080     in page-wait
	   0100     prevented from swapping during _f_o_r_k(2)
	   0200     will restore old mask after taking signal
	   0400     exiting
	   0800     doing physical I/O (bio.c)
	   1000     process resulted from a _v_f_o_r_k(2) which is not
		    yet complete



Printed 7/27/90               June				2






PSTAT(8)		      1990			 PSTAT(8)



	   2000     another flag for _v_f_o_r_k(2)
	   4000     process has no virtual memory, as it is a
		    parent in the context of _v_f_o_r_k(2)
	   8000     process is demand paging data pages from its
		    text vnode.
	   10000    process using sequential VM patterns
	   20000    process using random VM patterns
	   100000   using old 4.1-compatible signal semantics
	   200000   process needs profiling tick
	   400000   process is scanning descriptors during select
	   1000000  process page tables have changed
     POIP  number of pages currently being pushed out from this
	   process.
     PRI   Scheduling priority, see _s_e_t_p_r_i_o_r_i_t_y(2).
     SIG   Signals received (signals 1-32 coded in bits 0-31),
     UID   Real user ID.
     SLP   Amount of time process has been blocked.
     TIM   Time resident in seconds; times over 127 coded as 127.
     CPU   Weighted integral of CPU time, for scheduler.
     NI    Nice level, see _s_e_t_p_r_i_o_r_i_t_y(2).
     PID   The process ID number.
     PPID  The process ID of parent process.
     ADDR  If in core, the page frame number of the first page of
	   the `u-area' of the process.  If swapped out, the
	   position in the swap area measured in multiples of 512
	   bytes.
     RSS   Resident set size - the number of physical page frames
	   allocated to this process.
     SRSS  RSS at last swap (0 if never swapped).
     SIZE  Virtual size of process image (data+stack) in multi-
	   ples of 512 bytes.
     WCHAN Wait channel number of a waiting process.
     LINK  Link pointer in list of runnable processes.
     TEXTP If text is pure, pointer to location of text table
	   entry.

     --tt    Print table for terminals with these headings:

     RAW   Number of characters in raw input queue.
     CAN   Number of characters in canonicalized input queue.
     OUT   Number of characters in putput queue.
     MODE  See _t_t_y(4).
     ADDR  Physical device address.
     DEL   Number of delimiters (newlines) in canonicalized input
	   queue.
     COL   Calculated column position of terminal.
     STATE Miscellaneous state variables encoded thus:
	   T	delay timeout in progress
	   W	waiting for open to complete
	   O	open
	   F	outq has been flushed during DMA
	   C	carrier is on



Printed 7/27/90               June				3






PSTAT(8)		      1990			 PSTAT(8)



	   B	busy doing output
	   A	process is awaiting output
	   X	open for exclusive use
	   S	output stopped
	   H	hangup on close
     PGRP  Process group for which this is controlling terminal.
     DISC  Line discipline; blank is old tty OTTYDISC or ``new
	   tty'' for NTTYDISC or ``net'' for NETLDISC (see
	   _b_k(4)).

     --uu    print information about a user process; the next argu-
	   ment is its address as given by _p_s(1).  The process
	   must be in main memory, or the file used can be a core
	   image and the address 0.  Only the fields located in
	   the first page cluster can be located succesfully if
	   the process is in main memory.

     --ff    Print the open file table with these headings:

     LOC   The core location of this table entry.

     TYPE  The type of object the file table entry points to.
     FLG   Miscellaneous state variables encoded thus:
	   R	open for reading
	   W	open for writing
	   A	open for appending
	   S	shared lock present
	   X	exclusive lock present
	   I	signal pgrp when data ready
     CNT   Number of processes that know this open file.
     MSG   Number of messages outstanding for this file.
     DATA  The location of the vnode table entry or socket struc-
	   ture for this file.
     OFFSET
	   The file offset (see _l_s_e_e_k(2)).

     --ss print information about swap space usage: the number of
     (1k byte) pages used and free is given as well as the number
     of used pages which belong to text images.

     --TT prints the number of used and free slots in the several
     system tables and is useful for checking to see how full
     system tables have become if the system is under heavy load.

FFIILLEESS
     /vmunix	namelist
     /dev/kmem	default source of tables

SSEEEE AALLSSOO
     iostat(1), ps(1), systat(1), vmstat(1), stat(2), fs(5),
     K. Thompson, _U_N_I_X _I_m_p_l_e_m_e_n_t_a_t_i_o_n




Printed 7/27/90               June				4






PSTAT(8)		      1990			 PSTAT(8)



BBUUGGSS
     It would be very useful if the system recorded "maximum
     occupancy" on the tables reported by --TT;; even more useful if
     these tables were dynamically allocated.



















































Printed 7/27/90               June				5