There are many possible answers to this question. A process group leader, like your shell for example, can send a signal to terminate it's child processes. A 'hangup' signal (generated by ctrl-C to a foreground process) for example, usually terminates a program. When you exit the shell/window...