zombie processes are simply child processes that have exited, yet the
parent has not caught the SIGCHLD and done a "wait()" to get the process
termination status.

The question is, now, why didn't the parent catch the SIGCHLD and then
clear up things by doing a waitpid()??


Robert Hyatt                    Computer and Information Sciences
[EMAIL PROTECTED]               University of Alabama at Birmingham
(205) 934-2213                  115A Campbell Hall, UAB Station 
(205) 934-5473 FAX              Birmingham, AL 35294-1170

On Wed, 9 Aug 2000, Wang Yong wrote:

> Hi there,
>     Recently I make a program running with both the support of Mpi and Pthread. The 
>program is run on a Linux SMP kernel. If "mpirun -np 1 pi", the program can run well 
>and with the correct result, but if "mpirun -np 2 pi", some threads that were created 
>by the program in a mpi process(task) must got to be in "Zombie". What's the problem? 
> As follows is the main frame of the program:
> 
> ****************************
> pi(void *arg) {
> ...//computing PI
> }  
> main()
> {
> MPI_Init();
> pthread_create(th1, pi, NULL, 0);
> pthread_create(th2, pi ,NULL, 1);
> ...
> pthread_join(th1...);
> pthread_join(th2...);
> MPI_Reduce(...);
> }
> 
> Many thanks!
> wyong
> 
>�����>X���HE$�y�@A�a�����0������~��+��ٞ����ɩ�0��ӡI칻�&��ǧw�����r��zX��욟��f���h�������`z��
> 

-
Linux SMP list: FIRST see FAQ at http://www.irisa.fr/prive/dmentre/smp-howto/
To Unsubscribe: send "unsubscribe linux-smp" to [EMAIL PROTECTED]

Reply via email to