sys-proctable 1.1.3

An interface for providing process table information


Platform: Rubygems

Language: Ruby

License: Artistic-2.0


View on registry:


Direct download link:

Install: gem install sys-proctable -v 1.1.3

== Description
  A Ruby interface for gathering process information.

== Prerequisites
* Test::Unit 2.x (development only)

== Supported Platforms
* Windows 2000 or later
* Linux 2.6+
* FreeBSD
* Solaris 8+
* HP-UX 10+
* OS X 10.7+
* AIX 5.3+

== Installation
  gem install sys-proctable

  You may need to specify a platform in some cases. For example:

  gem install sys-proctable --platform mswin32 # Windows
  gem install sys-proctable --platform sunos   # Solaris
  gem install sys-proctable --platform linux   # Linux
  gem install sys-proctable --platform freebsd # FreeBSD
  gem install sys-proctable --platform darwin  # OS X

== Synopsis
  require 'sys/proctable'
  include Sys

  # Everything{ |p|
    puts p.comm
    # ...

  # Just one process
  s =
  puts s.comm
  # ...

  # Return the results as an array of ProcTableStructs
  a =
  a.each do |p|
    # ...

== Notes 
  Windows users may pass a host name as a second argument to get process
  information from a different host. This relies on the WMI service running.

== Known Issues
=== FreeBSD
  A kvm interface is used. That means the owner of the process using the
  sys-proctable library needs to be a member of the kvm group (or root).

=== Solaris
  The cmdline member on Solaris is limited to 80 characters unless you (or
  your program) own the process. This is a Solaris design flaw/feature.

=== OS X
  The libproc interface is used. That means you will only get list of
  processes that you have access to. To get a full listing, run as root.

== Future Plans
  Add support for NetBSD and OpenBSD.
  Convert remaining C code (just HP-UX at this point) to FFI.

== Acknowledgements
  This library was originally based on the Perl module Proc::ProcessTable
  by Dan Urist. Many ideas, as well as large chunks of code, were taken
  from his work. So, a big THANK YOU goes out to Dan Urist.

  A big thanks also goes out to Mike Hall who was very helpful with ideas,
  logic and testing.

  Thanks also go to Sean Chittenden for providing an account on one of his
  FreeBSD machines. This is how the FreeBSD support was (initially) added.

  Thanks go to James Hranicky for providing a patch that grabs name, eid,
  euid, gid and guid info in the Linux version, along with some general
  debugging help.
  Thanks go to David Felstead for the original OS X code. Thanks also go
  to Matthias Zirnstein for adding the original cmdline support for OS X.

  Finally I'd like to thank all the folks who have submitted bug reports
  and/or patches.

== Help Wanted
  I do not have access to all platforms. If your platform is not supported
  then you will need to either submit a patch or give me a remote account
  on a box with a compiler so that I can write the code.

== More documentation
  See the documentation under the 'doc' directory for more information,
  including platform specific notes and issues.

== License
  Apache 2.0
== Copyright
  (C) 2003-2016 Daniel J. Berger
  All Rights Reserved.

== Author
  Daniel J. Berger


  • 1.1.3 - September 28, 2016 17:41
  • 1.1.2 - September 19, 2016 04:25
  • 1.1.1 - July 01, 2016 01:42
  • 1.1.0 - June 27, 2016 21:02
  • 1.0.0 - January 11, 2016 14:47
  • 0.9.9 - November 08, 2015 21:46
  • 0.9.8 - April 19, 2015 03:24
  • 0.9.7 - April 19, 2015 00:00
  • 0.9.6 - February 24, 2015 20:00
  • 0.9.5 - February 10, 2015 18:22
See all 22 releases

Project Statistics

SourceRank 20
Dependencies 0
Dependent projects 76
Dependent repositories 1.61K
Total releases 22
Latest release
First release
Stars 88
Forks 25
Watchers 5
Contributors 10
Repo Size: 271 KB

Top Contributors See all

Daniel Berger Ivan Kuchin Ben Mathwig Matthias Zirnstein Rich Chatterton Jesse Cooke Joe Rafaniello Ryan Cunningham Dennis Günnewig Jianjun Mao

Something wrong with this page? Make a suggestion

Export .ABOUT file for this library

Last synced: 2015-01-28 22:51:23 UTC

Login to resync this project