Question: 1. Write a program that blocks and then ignores the signal, SIGINT in 7 steps as follows 1) Set up the handler for the signal

1. Write a program that blocks and then ignores the signal, SIGINT in 7 steps as

follows

1) Set up the handler for the signal SIGINT

Use signal( ) to set up a handler for SIGINT

The handler function should print out signal number and description about the signal : use the passed argument for the signal number and strsignal( ) for description

2) Block SIGINT for 10 seconds

Use sigprocmask( ) to block SIGINT and

Use sleep( ) to keep 10 seconds

Try Control-C (it generates a signal SIGINT) to see the pending signals

include SIGINT at the next step (the handler should not be called).

3) Show pending signals

Use sigpending( ) and printSigset( )

Pending signals will be shown

4) Ignore SIGINT

Use SIG_IGN option for signal( )

5) Show pending signals again

Use sigpending( ) and printSigset( )

Nothing will be shown

6) Set up the handler for SIGINT again

Use signal( )

7) Unblock SIGINT

Use sigprocmask( )

Use sleep( ) to keep for 10 seconds

The handler function should be working printing out I caught signal 2 (Interrupt) when you type in Control-C.

The functions introduced in each step are required to be used for this

homework.

You can also use other related functions covered in the lecture notes.

Your program should print out a statement indicating each step, for example,

$ ./homework4

Step 1) Setting up

Step 2) Blocking (10 seconds)

^CStep 3) Pending signals are 2 (Interrupt) Step 4) Ignoring

Step 5) Pending signals are

Step 6) Setting up again Step 7) Unblocking

^CI caught signal 2 (Interrupt)

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!