A process monitor and manager for *nix systems.
This is a modified version of the Doom source code which represents system processes as soldiers. It could be considered a graphical interface to the 'ps', 'renice', and 'kill' commands. Wounding a soldier re-nices the process, and killing him kill -9's the process.
This is a proof-of-concept only, and needs lots of work before it could be truly useful.
From Dennis Chao's webpage:
Some of the potential benefits of using Doom as a tool for system administration:
- The machine load is immediately apparent to the player,
who can see how crowded a room is. The player can eyeball many
machines from a high vantage point and go down to a room that
needs maintenance.
- There is a nice continuum for resource allocation.
A user may choose to simply wound processes rather than killing
them, which could naturally be translated to renicing them.
- A new sysadmin can be given less power by providing her with a
smaller weapon. A rank beginner may not be given a weapon at all
and be forced to attack processes with her bare hands. It would
take a foolhardy player to attack a room full of monsters, just
as a newbie should not kill a bunch of important processes.
A more experienced sysadmin would have time to stop a newbie who
is trying to kill the wrong process.
The real work could be left to those with the big guns. The truly
great sysadmins could have BFGs.
- Really crowded systems would regulate their own load because
monsters occasionally kill each other. Once the population in a
room goes down, the monsters will stop attacking each other.
- Drastic action takes work. In a command line interface, all
actions take approximately the same amount of effort. One
can
ls just as easily as rm -rf *,
which is kind of unfortunate.
In a cyberspace environment, the players are not omnipotent,
so performing large actions takes time and effort.
- Important processes can be instantiated as more powerful
monsters. They can then defend themselves against inexperienced
sysadmins.
- Sysadmins could cooperate or compete. Doom is a natural
environment for player-to-player interactions. A team of players
can cooperate to take care of a heavily-loaded system, or they
can even take out rogue sysadmins who are killing the wrong
processes.
A few of the problems of using Doom as a tool for system administration:
- Certain processes are vital to the computer's operation and
should not be killed. For example, after I took the screenshot
of myself being attacked by
csh, csh
was shot by friendly fire from behind, possibly by tcsh
or xv, and my session was abruptly terminated.
- Mapping processes to appropriate monsters is difficult.
Should large processes be mapped to large monsters?
Should the monster type reflect the CPU as well as memory usage?
Should processes and their children look alike?
- It is difficult to tell if your employees are doing real work
or just goofing off when tools and games have the same GUI.
License: free
|