Windows では、よく知らないけど、
Linux では、プロセスに親子関係がある

そして親プロセスが終了すると、子プロセスにも終了メッセージが送られて、
それに何も対処しないと、普通は子プロセスも終了する

つまり、親亀こけたら子亀もこける

シェルから起動したプロセスは、シェルの子プロセスになっている

だからデーモン・サービスのように、親プロセスから切り離すか、
親から終了メッセージが送られても、子が終了しないような工夫をする必要がある

また、パイプラインでは、ジョブという処理単位もあり、
ジョブグループにまとめられて、そのグループ全部に対して作用する