Zombie Killer
Categories
Component ID
Component name
Component type
Maintenance status
Development status
Component security advisory coverage
Component created
Component changed
Component body
This module kills zombies!
Why? Because someone said "I bet Drupal can't kill zombies".
On Unix and Unix-like computer operating systems, a zombie process or defunct process is a process that has completed execution but still has an entry in the process table. This entry is still needed to allow the process that started the (now zombie) process to read its exit status. The term zombie process derives from the common definition of zombie — an undead person.
This module was created by ximo and dixon_ as a response to this challenge, and will actually kill zombie processes on your server. For this to work you must run your server as root, so it won't do any harm when installed on a normal Drupal site. Still, it requires pretty bad judgement.
Here's an example of the action that takes place in the module:
// Bring out our weapon of choice.
$weapon = $form_state['storage']['values']['weapon'];
// Die zombies, die!!!
foreach ($form_state['values']['parents'] as $ppid) {
if ($weapon == 'signal') {
shell_exec('kill -s SIGCHLD '. $ppid); // BAM!
}
elseif ($weapon == 'kill') {
shell_exec('kill -9 parent '. $ppid); // POW!
}
// @todo Check whether zombie was successfully killed or still undead.
}
The working module can be found on GitHub.
Warning!
To kill zombies, you must run your server as root. That, of course, is both dangerous and stupid. Emergency use only!