Exams › GATE › Technical
Consider the two functions incr and decr shown below.
incr(){
wait(s);
X = X+1;
signal(s);
}
decr(){
wait(s);
X = X-1;
signal(s);
}
There are 5 threads each invoking incr once, and 3 threads each invoking decr once, on the same shared variable X. The initial value of X is 10.
Suppose there are two implementations of the semaphore s, as follows:
I-1: s is a binary semaphore initialized to 1.
I-2: s is a counting semaphore initialized to 2.
Let V1, V2 be the values of X at the end of execution of all the threads with implementations I-1, I-2, respectively.
Which one of the following choices corresponds to the minimum possible values of V1, V2, respectively?
- 15, 7
- 7, 7
- 12, 7
- 12, 8
Correct answer: 12, 7
Solution
The correct option is 12 for V1 because with a binary semaphore, only one thread can modify X at a time, allowing for all increments to occur before any decrements, resulting in 10 + 5 - 3 = 12. For V2, the counting semaphore allows two threads to access X simultaneously, but even with this concurrency, the maximum value achievable after all operations is 10 + 5 - 3 = 12, but the minimum possible value is 7 due to potential interleaving of operations.
Related GATE Technical questions
- Which one of the following sequences when stored in an array at locations A[1],..., A[10] forms a max-heap?
- Let SLLdel be a function that deletes a node in a singly-linked list given a pointer to the node and a pointer to the head of the list. Similarly, let DLLdel be another function that deletes a node in a doubly-linked list given a pointer to the node and a pointer to the head of the list. Let n denote the number of nodes in each of the linked lists. Which one of the following choices is TRUE about the worst-case time complexity of SLLdel and DLLdel?
- Consider the Deterministic Finite-state Automaton (DFA) A shown below. The DFA runs on the alphabet {0,1}, and has the set of states {s,p,q,r}, with s being the start state and p being the only final state.
Which one of the following regular expressions correctly describes the language accepted by A?
- Which one of the options given below refers to the degree (or arity) of a relation in relational database systems?
- Suppose two hosts are connected by a point-to-point link and they are configured to use Stop-and-Wait protocol for reliable data transfer. Identify in which one of the following scenarios, the utilization of the link is the lowest.
- An algorithm has to store several keys generated by an adversary in a hash table. The adversary is malicious who tries to maximize the number of collisions. Let k be the number of keys, m be the number of slots in the hash table, and k > m.
Which one of the following is the best hashing strategy to counteract the adversary?
⚔️ Practice GATE Technical free + battle 1v1 →