Write a program that creates a child process. The remaining of your program depends on the last digit of your student number (9 digit number) (consider zero as an even number). If the last digit of your student number (9 digit number) is an odd number: After creating the child process, the parent process will set an alarm using the SIGALRM signal to expire in X minutes. The value of X is calculated using the last digit of your student number (9 digit number) plus 5. While the alarm timer does not expire, the child process will print on the screen the message “The clock is ticking for Y minutes!”, where Y is the current amount of minutes passed since the first message sent by the child process. Therefore, the child prints the message at one minute intervals. When the alarm timer expires, the parent kills the child process, waits for the child to die and then prints: “The child task is completed!”, and exits the program. If the last digit of your student number (9 digit number) is an even number: After creating the child process, the child process will set an alarm using the SIGALRM signal to expire in X minutes. The value of X is calculated using the last digit of your student number (9 digit number) plus 5. While the alarm timer does not expire, the parent process will print on the screen the message “The clock is ticking for Y minutes!”, where Y is the current amount of minutes passed since the first message was printed by the parent. Therefore, the parent prints the message at one minute intervals. When the alarm timer expires, the child sends a SIGINT signal to the parent process, sleeps for 2 seconds and terminates. When the parent handles the SIGINT signal, it waits for the child to die and then prints: “The child task is completed!”, and exits the program. Note: Inside the C code you must add meaningful explanatory comments to all major commands and semantics of what the control structures are performing in relation to the realisation of your unique example. Comments must be short, clear, and objective about how the code will perform.
Write a program that creates a child process. The remaining of your program depends
on the last digit of your student number (9 digit number) (consider zero as an even number).
If the last digit of your student number (9 digit number) is an odd number:
After creating the child process, the parent process will set an alarm using the
SIGALRM signal to expire in X minutes. The value of X is calculated using the
last digit of your student number (9 digit number) plus 5. While the alarm timer does not expire, the
child process will print on the screen the message “The clock is ticking for Y
minutes!”, where Y is the current amount of minutes passed since the first
message sent by the child process. Therefore, the child prints the message at
one minute intervals. When the alarm timer expires, the parent kills the child
process, waits for the child to die and then prints: “The child task is
completed!”, and exits the program.
If the last digit of your student number (9 digit number) is an even number:
After creating the child process, the child process will set an alarm using the
SIGALRM signal to expire in X minutes. The value of X is calculated using the
last digit of your student number (9 digit number) plus 5. While the alarm timer does not expire, the
parent process will print on the screen the message “The clock is ticking for Y
minutes!”, where Y is the current amount of minutes passed since the first
message was printed by the parent. Therefore, the parent prints the message
at one minute intervals. When the alarm timer expires, the child sends a
SIGINT signal to the parent process, sleeps for 2 seconds and terminates. When
the parent handles the SIGINT signal, it waits for the child to die and then prints:
“The child task is completed!”, and exits the program.
Note: Inside the C code you must add meaningful explanatory comments to all major
commands and semantics of what the control structures are performing in relation to the
realisation of your unique example. Comments must be short, clear, and objective about
how the code will perform.
Step by step
Solved in 4 steps with 2 images