Back in 2007 Chris Miles announced PSI - Python System Information, a Python extension module to provide access to some system information not normally available to Python. Most notably it allows you to look at all processes on the system and get details like memory usage, cpu usage, users and many more things the kernel knows about a process. And all this in a pythonic way!
At the time the implementation was not perfect (when will an implementation ever be?), it had many memory leaks and reference counting errors, and sadly no one seemed to have the time and motivation to work on it for a long time. But since the beginning of this year I finally found some time to fix these issues and soon some more people joined in. Chris has been amazing in allowing access to almost anything I asked for and since then there has been steady development improving the code base, tests and API. Right now PSI does not leak any memory, and provides basic system identification and detailed process information on Linux (2.4 & 2.6 kernels), Darwin 10.3 and up, SunOS (5.8-5.11) and AIX (5.3) and it does this for any version of Python greater then 2.3, including 3.0. Not too shabby!
There are many things we would like to do in the future too. more platform support for one. Ideally PSI should run on all the major platforms supported by Python itself (and all minor ones too). And more information too, getting information about processes is one very useful and common thing but there is so much more the kernel can tell us: CPU information and statistics, network interfaces, etc. It's a massive and never ending task, but hopefully we can do the common things on all major platforms.
Version 0.3b1.1 has been released now. Seems the last version did only ship the sources for Linux and not all platforms. This bugfix release also adds the MANIFEST file so that distutils can build binary distributions from the tarball.