There are some things that can be the fault of the hardware (bad memory or faulty CPU),
some that can be the fault of the package (are you using redhat's Perl, or did you build your own?), some that
might be because of you using less reliable features
of Perl (signal handling can be iffy, as threads once were),
and some might be legitimate bugs in perl (although these
are pretty rare). Can you give us more information on
what your script is trying to do, when it crashes, and
what you're running it on?