Consider: (fhpd) load /bin/ls (fhpd) start process [0.0] 1234 started, executable /bin/ls then $ kill -9 1234 the response should be: (fhpd) Process [0.0] terminated (fhpd) focus [0.0] /bin/ls i.e., when a process is terminated it automatically switches back to the underlying executable; this is best implemented by the process groups having a stack or something behind them, when the process disappears it pops that leaving the executable underneath it this would also simplify the current "kill" code which tries to synchronously re-load the executable (instead the stacked executable from before the run would be restored).