logo

Crowdly

Browser

Add to Chrome

Check all the correct claims which concern the code below. The following code...

✅ The verified answer to this question is available below. Our community-reviewed solutions help you understand the material better.

Check all the correct claims which concern the code below.

The following code makes it

possible to exchange signals between a sender and a receiver. We assume

that the receiver is started a few seconds before the sender. Also, the

command line to start the sender provides the process id of receiver.

Last but not least, we assume that all works as

expected (no process is killed during execution, etc.)

Receiver code:

void getSignal(int signo) {

  if (signo == SIGUSR1) {

    printf("Received SIGUSR1\n");

  } else {

    printf("Received%d\n", signo);

  }

}

int main(void)

{

  printf("Registering SIGUSR1 signal / #SIGUSR1=%d\n", SIGUSR1);

  signal(SIGUSR1, getSignal);

  sleep(30);

}

Sender code:

int main(int argc, char**argv) {

  int pid;

  if (argc <2) {

    printf("Usage: sender <destination process pid>\n");

    exit(-1);

 

}

  pid = atoi(argv[1]);

  printf("Sending SIGURG to %d\n", pid);

  kill(pid, SIGURG);

  printf("Sending SIGUSR1 to %d\n", pid);

  kill(pid, SIGUSR1);

  printf("Sending SIGUSR1 to %d\n", pid);

  kill(pid, SIGUSR1);

 }

0%
0%
More questions like this

Want instant access to all verified answers on moodle.eurecom.fr?

Get Unlimited Answers To Exam Questions - Install Crowdly Extension Now!

Browser

Add to Chrome