Given below is a program which when executed spawns two concurrent processes :
semaphore $X : = 0 ;$
/* Process now forks into concurrent processes $P1$ & $P2$ */
$\begin{array}{|l|l|}\hline \text{$P1$} & \text{$P2$} \\\hline \text{repeat forever } & \text{repeat forever} \\ \text{$V (X) ;$ } & \text{$ P(X) ;$} \\ \text{Compute; } & \text{Compute;}\\ \text{$P(X) ;$ } & \text{$V(X) ;$} \\\hline \end{array}$
Consider the following statements about processes $P1$ and $P2:$
- It is possible for process $P1$ to starve.
- It is possible for process $P2$ to starve.
Which of the following holds?
- Both (I) and (II) are true.
- (I) is true but (II) is false.
- (II) is true but (I) is false
- Both (I) and (II) are false