kill(2)したらXごと落ちた

kill(-1, SIGTERM);

うーむ。そりゃそうか。

pid に -1 を指定した場合、 sig で指定したシグナルが、 呼び出し元のプロセスがシグナルを送る許可を持つ全てのプロセスに 送られる。但し、プロセス番号 1 (init) へはシグナルは送られない。 以下の関連部分も参照のこと。

pid に -1 より小さな値を指定した場合、 -pid の プロセス・グループに属するすべてのプロセスに sig で 指定したシグナルが送られる。