GATE | GATE CS 2012 | Question 8
A process executes the code
fork(); fork(); fork();
The total number of child processes created is
(A) 3
(B) 4
(C) 7
(D) 8
Answer: (C)
Explanation: Let us put some label names for the three lines
fork (); // Line 1 fork (); // Line 2 fork (); // Line 3 L1 // There will be 1 child process created by line 1 / \ L2 L2 // There will be 2 child processes created by line 2 / \ / \ L3 L3 L3 L3 // There will be 4 child processes created by line 3
We can also use direct formula to get the number of child processes. With n fork statements, there are always 2^n – 1 child processes. Also see this post for more details.
Quiz of this Question
Please Login to comment...