GATEverse Practice, past papers & mock tests
GATE 2021 · Set-1
Operating SystemsProcess Management-IIhardMSQ2 marks
Consider the following pseudocode, where S is a semaphore initialized to 5 in line 2 and counter is a shared variable initialized to 0 in line 1. Assume that the increment operation in line 7 is not atomic.
text
1.  int counter = 0;
2.  Semaphore S = init(5);
3.  void parop(void)
4.  {
5.      wait(S);
6.      wait(S);
7.      counter++;
8.      signal(S);
9.      signal(S);
10. }
If five threads execute the function parop concurrently, which of the following program behavior(s) is/are possible?

Select every correct option.

Save your progress

Related Operating Systems PYQs