Consider the following program snippet. Assume that the program compiles and runs successfully. Further, assume that the fork( ) system call is always successful in creating a process.
int main( ) {
int i;
for (i = 0; i < 3; i++){
if (fork() == 0){
continue;
}
break;
}
printf("Hello!");
return 0;
}
```
The total number of times that the printf statement gets executed is $\_\_\_\_$ . (answer in integer)
Consider a CPU that has to execute two types of processes. The first type, Actuators (A), requires a CPU burst of 6 seconds. The second type, Controllers (C), requires a CPU burst of 8 seconds. A new process of type A arrives at time $t=10,20,30,40$, and 50 (in seconds). Similarly, a new process of type C arrives at time $t=11,22,33$, 44, and 55 (in seconds). The CPU scheduling policy is First Come First Serve (FCFS). The first process of type A starts running at $t=10$ seconds. The average waiting time (in seconds) for the 10 processes is $\_\_\_\_$ . (rounded off to one decimal place)
Consider the following program in C:
#include <stdio.h>
void func(int i, int j) {
if(i < j) {
int i = 0;
while (i < 10) {
j += 2;
i++;
}
}
printf("%d", i);
}
int main() {
int i = 9, j = 10;
func(i, j);
return 0;
}
The output of the program is $\_\_\_\_$ . (answer in integer)
Note: Assume that the program compiles and runs successfully.
Consider the recursive functions represented by the following code segment:
int bar(int n){
if (n == 1) return 0;
else return 1 + bar(n/2);
}
int foo(int n){
if (n == 1) return 1;
else return 1 + foo(bar(n));
}
The smallest positive integer n for which foo(n) returns 5 is $\_\_\_\_$ . (answer in integer)
Note: Ignore syntax errors (if any) in the function.
GATE CSE Papers
All year-wise previous year question papers