my $pid = fork() ; die "fork failed '$!'" if !defined($pid) ; if ($pid == 0) { exec("notepad") ; } ; print "Started Notepad \$pid = $pid\n" ; my $r = 1 ; sub handler { kill 'INT', $pid ; $r = 0 ; } ; $SIG{INT}=\&handler; while ($r) { sleep(1) } ; print "And we're done\n" ;