Ciao a tutti,
da ore ormai cerco di avere questa stampa:
codice:
1 - Processo figlio
2 - Processo padre
3 - Processo figlio
4 - Processo padre
5 - Processo figlio
6 - Processo figlio
dal seguente programma:
codice:
#include <errno.h>       /* error definitions and routines */
#include <stdlib.h>      /* C standard library */
#include <unistd.h>      /* unix standard library */
#include <stdio.h>       /* standard I/O library */
#include <string.h>      /* string functions */
#include <sys/types.h>
#include <sys/wait.h>
#include </usr/include/signal.h>  /* funzioni per i segnali*/

main (int argc, char *argv[])
{
	int i, status;
	pid_t pid;

	pid = fork ();

	if (!pid)
	{
		printf ("1 - Processo figlio\n");
		fflush (stdout);
		kill (getpid(), SIGSTOP);
		printf ("3 - Processo figlio\n");
		fflush (stdout);
		kill (getppid(), SIGCONT);
		kill (getpid(), SIGSTOP);
		printf ("5 - Processo figlio\n");
		fflush (stdout);
		printf ("6 - Processo figlio\n");
		fflush (stdout);
		exit(0);
	} else
	{
		printf ("2 - Processo padre\n");
		fflush (stdout);
		kill (pid, SIGCONT);
		kill (getpid(), SIGSTOP);
		printf ("4 - Processo padre\n");
		fflush (stdout);
		kill (pid, SIGCONT);
		wait(NULL);
	}
	return 0;
}
ma non riesco a venirne a capo. Potete aiutarmi?