Question: Write a C program that does the following: 1) Counts and prints the number of SIGINT(Ctrl + C) signals received during the first 10 seconds

Write a C program that does the following:

1) Counts and prints the number of SIGINT(Ctrl + C) signals received during the first 10 seconds of its life. (5 points)

2) "Blocks" the SIGINT(Ctrl + C) signal once it reaches 10 seconds of its life. (5 points)

3) "Unblocks" and "Ignores" the SIGINT(Ctrl + C) signal once it reaches 20 seconds of its life. (5 points)

4) Terminates after 30 seconds of life. (5 points)

Hints+Requirements:

1. To ignore a signal, you must modify its signal handler using sigaction().

2. To count the SIGINTs, you must install a signal handler for SIGINT using sigaction().

3. You can use alarm() to send yourself a SIGALRM signal after a specified number of seconds.

4. A signal can be waited upon using a signal handler + sigsuspend() OR using sigwait().

5. In order to block/unblock a signal, you must modify the signal mask using sigprocmask()

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!