To check the meaning of the status you should use the W* functions provided by the POSIX module:
use POSIX;
my $st = 139;
print "WIFEXITED: ", WIFEXITED($st), "\n";
print "WIFSIGNALED: ", WIFSIGNALED($st), "\n";
print "WTERMSIG: ", WTERMSIG($st), "\n";
On my Linux system this shows:
WIFEXITED: 0
WIFSIGNALED: 1
WTERMSIG: 11
which indicates that the process was terminated by a SEGV signal. You should run this on your AIX box in case AIX uses a different structure for the status code. So it is quite possible that the first java program is segfaulting.
|