1
GATE CSE 2025 Set 2
MCQ (More than One Correct Answer)
+2
-0

$P=\left\{P_1, P_2, P_3, P_4\right\}$ consists of all active processes in an operating system.

$R=\left\{R_1, R_2, R_3, R_4\right\}$ consists of single instances of distinct types of resources in the system.

The resource allocation graph has the following assignment and claim edges.

Assignment edges: $R_1 \rightarrow P_1, R_2 \rightarrow P_2, R_3 \rightarrow P_3, R_4 \rightarrow P_4$ (the assignment edge $R_1 \rightarrow P_1$ means resource $R_1$ is assigned to process $P_1$, and so on for others) Claim edges: $P_1 \rightarrow R_2, P_2 \rightarrow R_3, P_3 \rightarrow R_1, P_2 \rightarrow R_4, P_4 \rightarrow R_2$ (the claim edge $P_1 \rightarrow R_2$ means process $P_1$ is waiting for resource $R_2$, and so on for others) Which of the following statement(s) is/are CORRECT?

A
Aborting $P_1$ makes the system deadlock free.
B
Aborting $P_3$ makes the system deadlock free.
C
Aborting $P_2$ makes the system deadlock free.
D
Aborting $P_1$ and $P_4$ makes the system deadlock free.
2
GATE CSE 2024 Set 2
MCQ (More than One Correct Answer)
+2
-0

Consider a multi-threaded program with two threads T1 and T2. The threads share two semaphores: s1 (initialized to 1) and s2 (initialized to 0). The threads also share a global variable x (initialized to 0). The threads execute the code shown below.

// code of T1

wait(s1);

x = x + 1;

print(x);

wait(s2);

signal(s1);

// code of T2

wait(s1);

x = x + 1;

print(x);

signal(s2);

signal(s1);

Which of the following outcomes is/are possible when threads T1 and T2 execute concurrently?

A

T1 runs first and prints 1, T2 runs next and prints 2

B

T2 runs first and prints 1, T1 runs next and prints 2

C

T1 runs first and prints 1, T2 does not print anything (deadlock)

D

T2 runs first and prints 1, T1 does not print anything (deadlock)

3
GATE CSE 2021 Set 1
MCQ (More than One Correct Answer)
+2
-0

Consider the following pseudocode, where S is a semaphore intialized to 5 in line#2 an counter is a shared variable intialized to 0 in line#1. Assume that the increment operation in line#7 is not atomic.

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?

A

There is a deadlock involving all the threads.

B
The value of counter is 5 after all the threads successfully complete the execution of parop.
C
The value of counter is 1 after all the threads successfully complete the execution of parop.
D
The value of counter is 0 after all the threads successfully complete the execution of parop.
4
GATE CSE 2019
MCQ (Single Correct Answer)
+2
-0.67
Consider the following snapshot of a system running $n$ concurrent processes. Process $i$ is holding $X_i$ instances of a resource $\mathrm{R}, 1 \leq i \leq n$. Assume that all instances of R are currently in use. Further, for all $i$, process $i$ can place a request for at most $Y_i$ additional instances of R while holding the $X_i$ instances it already has. Of the $n$ processes, there are exactly two processes $p$ and $q$ such that $Y_p=Y_q=0$. Which one of the following conditions guarantees that no other process apart from $p$ and $q$ can complete execution?
A
$X_p + X_q < \min \{Y_k \mid 1 \leq k \leq n, k \neq p, k \neq q\}$
B
$X_p + X_q < \max \{Y_k \mid 1 \leq k \leq n, k \neq p, k \neq q\}$
C
$\min (X_p, X_q) \geq \min \{Y_k \mid 1 \leq k \leq n, k \neq p, k \neq q\}$
D
$\min (X_p, X_q) = \max \{Y_k \mid 1 \leq k \leq n, k \neq p, k \neq q\}$
GATE CSE Subjects
Software Engineering
Web Technologies
EXAM MAP