http://www.perlmonks.org?node_id=176258


in reply to spawning multiple child processes

Well, exec replaces a single process with another, but fork copies the running process. So, fork combined with exec is the way (at least under Unix) to spawn off new tasks. If you are doing a system, behind the screens, Perl will do a fork and an exec. It will just wait for the child to finish before continuing. Using a system with an ampersand tacked to the end of the command is an option, but that means Perl will first invoke a shell (using fork and exec) which will spawn off your command (using another fork and exec).

Abigail