Question: Two processes, P1 and P2, need to access a critical section of code. Consider the following synchronization construct used by the processes: Here, wants1 and

Two processes, P1 and P2, need to access a critical section of code. Consider the following synchronization construct used by the processes: Here, wants1 and wants2 are shared variables, which are initialized to false. Which one of the following statements is TRUE about the above construct? v /* P1 */ while (true) { wants1 = true: while (wants2 == true): /* Critical Section */ wants1=false: } /*Remainder section */ /* P2 */ while (true) { wants2 = true: while (wants1 == true): /* Critical Section */ wants2 = false: } /* Remainder section */ Two processes, P1 and P2, need to access a critical section of code. Consider the following synchronization construct used by the processes: Here, wants1 and wants2 are shared variables, which are initialized to false. Which one of the following statements is TRUE about the above construct? v /* P1 */ while (true) { wants1 = true: while (wants2 == true): /* Critical Section */ wants1=false: } /*Remainder section */ /* P2 */ while (true) { wants2 = true: while (wants1 == true): /* Critical Section */ wants2 = false: } /* Remainder section */
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
