Question: What does the following C program print and why? Note that emphasis of this question is on your understanding of the signal functionality. State your

What does the following C program print and why? Note that emphasis of this question is on your understanding of the signal functionality. State your assumptions where necessary. pid_t pid; void h1(int sig) { printf(eagle); kill(pid, SIGUSR2); } void h2(int sig) { printf (sparrow); exit(0); } main () { signal(SIGUSR2, h1); if ((pid = fork()) == 0) { signal(SIGUSR2, h2); kill(getppid(), SIGUSR2); while(1) {}; } else { pid_t p; int status; if ((p = wait(&status)) > 0) { printf(pigeon); } } }
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
