

          fork
               Fork the current Tcl process.  Fork returns zero to the
               child process and the process number of the child to
               the parent process. If the fork fails, a Tcl error is
               generated.

               If an execl is not going to be performed before the
               child process does output, or if a close and dup
               sequence is going to be performed on stdout or stderr,
               then a flush should be issued against stdout, stderr
               and any other open output file before doing the fork.
               Otherwise characters from the parent process pending in
               the buffers will be output by both the parent and child
               processes.
