1
GATE CSE 2007
MCQ (Single Correct Answer)
+2
-0.6
Two processes, P1 and P2, need to access a critical section of code. Consider the following synchronization construct used by the processes:
 /* P1 */
  while(true){
  want s1=true;
  while(wants2 == true){
  /* Critical Section */
   wants1 = false;
  }
  /* Reminder Section */
 }
 /* P2 */
  while(true){
  want s2=true;
  while(wants1 == true){
  /* Critical Section */
   Wants2 = false;
  }
  /* Reminder Section */
 }
Here wants1 and wants2 are shared variables, which are initialized to false. Which one of the following statements is TRUE about the above construct?
A
It does not ensure the mutual exclusion.
B
It does not ensure bounded waiting.
C
It requires that processes enter the critical section in strict alternation
D
It does not prevent deadlocks, but ensures mutual exclusion
2
GATE CSE 2007
MCQ (Single Correct Answer)
+1
-0.3
Consider the following statements about user level threads and kernel level threads.

Which one of the following statements is FALSE?

A
Context switch time is longer for kernel level threads than for user level threads.
B
User level threads do not need any hardware support.
C
Related kernel level threads can be scheduled on different processors in a multi-processor system.
D
Blocking one kernel level thread blocks all related threads.
3
GATE CSE 2007
MCQ (Single Correct Answer)
+2
-0.6
Consider the following C function:
int f(int n)
{
   static int r = 0;
   if(n <= 0) return 1;
   if(n>3)
   {
     r = n;
     return f(n-2)+2;
   }
  return f(n-1)+r;
}
What is the value of f(5)?
A
5
B
7
C
9
D
18
4
GATE CSE 2007
MCQ (Single Correct Answer)
+2
-0.6
Consider the following finite state automation GATE CSE 2007 Theory of Computation - Finite Automata and Regular Language Question 71 English

The language accepted by this automation is given by the regular expression

A
$${b^ * }a{b^ * }a{b^ * }a{b^ * }$$
B
$${\left( {a + b} \right)^ * }$$
C
$${b^ * }a{\left( {a + b} \right)^ * }$$
D
$${b^ * }a{b^ * }a{b^ * }$$