question on process creation and termination

From: Daniel Monjar <dmonjar_at_orgtek.com>
Date: Tue, 26 Sep 2000 11:38:21 -0400

This is vaguely DEC Unix related and, yes, it is derived from a
homework question (my wife's not mine). But something _is_ going on
that, when answered, will further my knowledge so:


The subject is process synchronization. They have a simple program that
looks like this:

#include <stdio.h>
int main()
{
  int x;

  printf("PID %d initial process \n", getpid() );

  x = fork();

  printf("PID %d terminates.\n", getpid() );
}


Parent tells its pid, creates a child and then both child and parent
display their pid and exits.

When run on a Sun machine the parent doesn't exit until the child is
done. When I run it on Intel Linux, Alpha Tru64 and Alpha OpenBSD the
parent terminates before the child. What is the Sun doing
differently than the others?

-- 
Daniel Monjar (mailto:dmonjar_at_orgtek.com)
"Meddle not in the affairs of dragons, 
 for you are crunchy and taste good with ketchup."
Received on Tue Sep 26 2000 - 15:39:57 NZST

This archive was generated by hypermail 2.4.0 : Wed Nov 08 2023 - 11:53:41 NZDT