#include <stdio.h>
#include <signal.h>
#include <unistd.h>
int wait_mark;
void waiting( ),stop( );
main( ) {
int i,j,k;
if (i=fork( )) {
j=wait () ;
printf (“Parent process!\n”);
printf (“i=%d j=gd\n”, i, j);
} else{
k=getpid( );
printf (“child process!\n”);
printf(“i=8d k=id\n”,i, k);
}
}
int func( ) ;
main ( )
{
int i,j:
signal(17,func);
if(i=fork()) {
printf(“Parent: Signal 17 will be send to Child! \n”);
kill (i,17);
wait (0) ;
}
else {printf(“Parent: finished! \n”);
sleep(10) ;
printf (“Child: A signal from my Parent is received! \n”) ;
exit() ;
}
func( ) {
printf(“It is signal 17 processing function! \n”);
}