When your perl script makes an external call (via system(), or backticks ``, and other methods) a sub-process is kicked off on the operating system. This sub-process is tied to your original script (parent/child). When the process completes, the child process goes away. So, you were on the right track all along.