-->

Previous | Table of Contents | Next

Page 432

Short Long Description
P ppid Parent process ID
r rss Resident set size
R resident Resident pages
s size Memory size in kilobytes
S share Amount of shared pages
t tty The minor device number of tty
T start_time Time process was started
U uid User ID number
u user Username
v vsize Total VM size in bytes
y priority Kernel scheduling priority

FIELD DESCRIPTIONS

PRI This is the counter field in the task struct. It is the time in HZ of the process's possible time slice.
NI Standard UNIX nice value; a positive value means less cpu time.
SIZE Virtual image size; size of text+data+stack.
RSS Resident set size; kilobytes of program in memory.
WCHAN Name of the kernel function where the process is sleeping, with the sys stripped from the function name. If
/boot/psdatabase does not exist, it is just a hex number instead.
STAT Information about the status of the process. The first field is R for runnable, S for sleeping, D for uninterruptible sleep, T for stopped or traced, or Z for a zombie process. The second field contains W if the process has no resident pages. The third field is N if the process has a positive nice value (NI field).
TT Controlling tty.
PAGEIN Number of major page faults (page faults that cause pages to be read from disk, including pages read from the buffer cache).
TRS Text resident size.
SWAP Kilobytes (or pages if _p is used) on swap device.
SHARE Shared memory.

UPDATING

This proc-based ps works by reading the files in the proc filesystem, mounted on /proc. This ps does not need to be suid kmem or have any privileges to run. Do not give this ps any special permissions.

You will need to update the /boot/psdatabase file by running /usr/sbin/psupdate to get meaningful information from the WCHAN field. This should be done every time you compile a new kernel.

NOTES

The member used_math of task_struct is not shown, since crt0.s checks to see if math is present. This causes the math flag to be set for all processes, and so it is worthless.

Programs swapped out to disk will be shown without command-line arguments, and unless the c option is given, in parentheses.

%CPU shows the cputime/realtime percentage. It will not add up to 100 percent unless you are lucky. It is time used divided by the time the process has been running.

The SIZE and RSS fields don't count the page tables and the task struct of a proc; this is at least 12k of memory that is always resident. SIZE is the virtual size of the proc (code+data+stack).

Page 433

BUGS

tty names are hard-coded: virtual consoles are v1, v2,…; serial lines are s0 and s1; pty's are pp0, pp1 … pq0, pq1, ….

AUTHOR

ps was originally written by Branko Lankester (lankeste@fwi.uva.nl) Michael K. Johnson (johnsonm@sunsite.unc.edu) rewrote it significantly to use the proc filesystem, changing a few things in the process. Michael Shields (mjshield@nyx.cs.du.edu) added the multiple-pids feature. Charles Blake(cblake@ucsd.edu) added multilevel sorting and is the current maintainer of the proc-ps suite.

Cohesive Systems, 27 July 1994

psbb

psbb—Extract bounding box from PostScript document

SYNOPSIS


psbb file

DESCRIPTION

psbb reads file, which should be a PostScript document conforming to the document structuring conventions and looks for a %%BoundingBox comment. If it finds one, it prints a line


llx lly urx ury

on the standard output and exits with zero status. If it doesn't find such a line or if the line is invalid, it prints a message and exits with nonzero status.

SEE ALSO


grops(1)

Groff Version 1.09, 6 August 1992

psidtopgm

psidtopgm—Convert PostScript image data into a portable graymap

SYNOPSIS


psidtopgm width height bits/sample [imagedata]

DESCRIPTION

psidtopgm reads the image data from a PostScript file as input and produces a portable graymap as output.

This is a very simple and limited program, and is here only because so many people have asked for it. To use it you have to manually extract the readhexstring data portion from your PostScript file, and then give the width, height, and bits/sample on the command line. Before you attempt this, you should at least read the description of the image operator in the PostScript Language Reference Manual.

It would probably not be too hard to write a script that uses this filter to read a specific variety of PostScript image, but the variation is too great to make a general-purpose reader. Unless, of course, you want to write a full-fledged PostScript interpreter…

SEE ALSO


pnmtops(1), pgm(5)

Previous | Table of Contents | Next