<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">Proc::ProcessTable, version .35

STATUS
======
This is BETA software; it seems to work, but use at your own risk :) 

Currently works on linux, solaris, aix, hpux, freebsd, irix, dec_osf,
bsdi, netbsd, unixware 7.x and SunOS. Please see the "README.osname" files
for details on individual os implementations. Please see the file
PORTING if you are interested in making it work on something
else. Please see the file TODO for a list of issues that need to be
addressed (and send me patches!).

Comments, bug reports, patches and especially ports are greatly
appreciated.

DESCRIPTION
===========
This module is a first crack at providing a consistent interface to
Unix (and maybe other multitasking OS's) process table information.
The impetus for this came about with my frustration at having to parse
the output of various systems' ps commands to check whether specific
processes were running on different boxes at a larged mixed Unix site.
The output format of ps was different on each OS, and sometimes
changed with each new release of an OS. Also, running a ps subprocess
from within a perl or shell script and parsing the output was not a
very efficient or aesthetic way to do things.

With this module, you can do things like this:

	# kill memory pigs 
	use Proc::ProcessTable;

	$t = new Proc::ProcessTable;
        foreach $p ( @{$t-&gt;table} ){	
	  if( $p-&gt;pctmem &gt; 95 ){
	    $p-&gt;kill(9);
          }		
        }

There is another short example in the file "example.pl" in the
distribution. For a more elaborate example (in German), see
&lt;http://www.linux-magazin.de/ausgabe.1999.02/Proc/proc.html&gt;.
&lt;shameless plug&gt; If you can't read German, try my other module,
WWW::Babelfish!&lt;/shameless plug&gt; 
	
There are also two contributed modules: a module called Proc::Killall
contributed by Aaron Sherman to kill all processes whose command-lines
match a given pattern, and a module called Proc::Killfam by Stephen
Lidie to kill a list of processes and their children. These modules
are installed along with Proc::ProcessTable. Pod documentation is
included in both of them.


INSTALLATION
============
This module needs the File::Find and Storable modules in order to
work. File::Find is generally included with perl distributions;
Storable is available from CPAN. 

After unpacking the tar file, do:

        perl Makefile.PL 
        make
	make test
        make install

There is embedded POD documentation in ProcessTable.pm and
Process/Process.pm.

ACKNOWLEDGEMENTS
================
Thanks to the many people who have sent in ports and patches. Without
them this module would be impossible to support on so many platforms.

David Paquet &lt;David.Paquet@cnes.fr&gt;		AIX port
Mike Romberg &lt;romberg@fsl.noaa.gov&gt;		HPUX port
Slaven Rezic &lt;eserte@cs.tu-berlin.de&gt;		FreeBSD port
W. Phillip Moore &lt;wpm@ms.com&gt;			IRIX port
Peter ? &lt;hooft@natlab.research.philips.com&gt;	IRIX version patch
Rolf Petter Halle &lt;rph@nextel.no&gt;		solaris nanosecond patch
Bernhard Schmalhofer &lt;Bernhard.Schmalhofer@gmx.de&gt;	dec_osf port
Sean Eskins &lt;sean@gilasoft.com&gt;				bsdi port
Peter Reich &lt;pr@alles.prima.de&gt;				netbsd port
Dave Alden &lt;alden@math.ohio-state.edu&gt;	solaris "nice" and "onproc" patch
Noel Paul &lt;NoelP@mincom.com&gt;		dec_osf and IRIX patches
F. Buirey &lt;f.buirey@saprr.fr&gt; 		AIX patch for SMP
Aaron Sherman &lt;ajs@ajs.com&gt;		Proc::Killall module
Philip Gwyn &lt;fil@pied.nu&gt;		jiffies -&gt; Usec patch for linux
Slaven Rezic &lt;eserte@cs.tu-berlin.de&gt;	Patch for Storable, FreeBSD 
Slaven Rezic &lt;eserte@cs.tu-berlin.de&gt;	Patch to make test script -w clean
Wolfgang Friebel &lt;Wolfgang.Friebel@desy.de&gt; HPUX time patch
Adrian Phillips &lt;tandem@dnmi.no&gt;	AIX cmndline patch
Chris Adams &lt;cmadams@hiwaay.net&gt;	Patch for array return
					support, new fields on Dec OSF.
					Patches for TTYs with device #0 and 
					using table() to get procs on Dec.
Tryggvi Farestveit &lt;tryggvi@firmanet.is&gt; Patch for Linux cmndline
Steve Lidie &lt;sol0@Lehigh.EDU&gt;		Killfam.pm module
David Good &lt;dgood@stratasource.com&gt;	Patch for 32-bit HPUX 11.0 support
Martin Lucina &lt;mato@catalyst.net.nz&gt;	Unixware 7.x port
Shawn Clifford &lt;shawn.a.clifford@lmco.com&gt; SunOS port
Thomas Linden &lt;tom@daemon.de&gt;		Linux enhancements
Nicolas Belan &lt;belan@matranet.com&gt;	Patch to add cmndline for bsdi
Marcus Crafter &lt;crafterm@osa.de&gt;	Documentation typo
Stephen Pillinger &lt;S.M.Pillinger@cs.bham.ac.uk&gt;
					Fix for JIFFIES_TO_MICROSECONDS int 
					overflow.	  
H.Merijn Brand &lt;h.m.brand@hccnet.nl&gt;	Patch for File::Find on AIX.
Anthony Higa &lt;anthony@squareusa.com&gt;	Linux code cleanup patch.
Thomas Glanzmann &lt;sithglan@stud.uni-erlangen.de&gt;
					Patch to fix starttime
					overflow and MP time bugs on linux.
Doug Lewis &lt;dlewis@exchange.webmd.net&gt;	Patch for taint checking.
Jan L Peterson &lt;jlp@flipdog.com&gt;	Patch for taint checking.
Peter van Hooft &lt;hooft@natlab.research.philips.com&gt;
					Patch to allow non-root use on
					IRIX.

Please note that Bernard Schmalhofer is no longer able to provide
support for the dec_osf port.
			
COPYRIGHT
=========
Copyright (c) 1998-2002 Daniel J. Urist. All rights reserved.
This package is free software; you can redistribute it and/or modify
it under the same terms as Perl itself.

--
Daniel J. Urist
durist@world.std.com
http://www.world.std.com/~durist
</pre></body></html>