面倒臭いわりには実りが少ないなぁ……。

・アプリは全てスクリプト経由で起動する。起動・終了時に下記の処理を仕込む。
で、X使用数を全スクリプトで共有するカウンタとする(ファイルに書くとかね)。
・スクリプト起動時にX使用数が+1する。X使用数が1になったらXを起動する。
・スクリプト終了時にX使用数を-1する。X使用数が0になったらXをkillする。
・使用数を加算・減算・参照するとき、Xを起動・終了するときの排他制御に注意。