Hi xuejun gu,
Are you allocating the extremely large array on the heap, or on the stack?
If you are allocating the array on the stack, make sure you have enough stack space for your large array. For Red Hat Linux, I believe that's via the ulimit command, use "ulimit -a" to see your current settings.
HTH, --Eljay