What is the output of this program?
#include<stdio.h>
#include<signal.h>
#include<stdlib.h>
void response (int);
void response (int sig_no)
{
printf("%sn",sys_siglist[sig_no]);
printf("This is singal handlern");
}
int main()
{
pid_t child;
int status;
child = fork();
switch (child){
case -1 :
perror("fork");
exit (1);
case 0 :
kill(getppid(),SIGKILL);
printf("I am an orphan process because my parent has been killed by men");
printf("Handler failedn");
break;
default :
signal(SIGKILL,response);
wait(&status);
printf("The parent process is still aliven");
break;
}
return 0;
}
a) the child process kills the parent process
b) the parent process kills the child process
c) handler function executes as the signal arrives to the parent process
d) none of the mentioned
Submitted by: MurtazaExplanation:
The SIGKILL signal can not be handled by singal handler function.
Output:
[root@localhost google]# gcc -o san san.c
[root@localhost google]# ./san
Killed
[root@localhost google]# I am an orphan process because my parent has been killed by me
Handler failed
[root@localhost google]#
Submitted by: Murtaza
Read Online Signal Handling Job Interview Questions And Answers
Top Signal Handling Questions
☺ | Signals are handled using which system call? |
☺ | Default action of SIGSEGV is: |
☺ | Which signal is sent when the Child process terminates? |
☺ | The kill system call is used to: |
☺ | Which of the following signal cannot be handled or ignored? |
Top Linux OS Categories
☺ | Device Drivers Interview Questions. |
☺ | Linux OS Management Interview Questions. |
☺ | Linux Makefile Interview Questions. |
☺ | Linux Environment Interview Questions. |
☺ | Linux OS Shell Interview Questions. |