Question: Need help with this! Has to be in c code and is related to Linux. Write a program that blocks and then unblocks the signals,
Need help with this! Has to be in c code and is related to Linux. Write a program that blocks and then unblocks the signals, SIGINT (ctrl + c) and SIGQUIT (ctrl+) in following steps. 1) Set up the handler for the signal SIGINT and SIGQUIT Use signal() to set up a handler The handler function should print out signal number and description about the signal: use the argument for the signal number and strsignal() for description e 2) Block SIGINT and SIGQUIT for 10 seconds Use sigprocmask() to block . Use sleep() for 10 seconds . Try 'ctrl-c'and ctrl-I'to see that the pending signals include SIGINT and SIGQUIT at the next step (the handler should not be called) Signals other than SIGINT and SIGQUIT should not be blocked . 3) Show pending signals . Use sigpending() and printSigset() . Pending signals will be shown .If there is not pending signals, print "empty signal set" 4) Unblock SIGNT and SIGQUIT . Use sigprocmask) . The handler function should print out "I caught signal 2 (Interrupt)" when you type in "ctri-c", for example 5) The program should loop until SIGINT (not SIGQUIT) is caught, when the SIGINIT is caught the program is finished
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
