Skip to content
Related Articles

Related Articles

Improve Article
GATE | GATE CS 2012 | Question 8
  • Difficulty Level : Medium
  • Last Updated : 29 Nov, 2013

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

Attention reader! Don’t stop learning now. Learn all GATE CS concepts with Free Live Classes on our youtube channel.

My Personal Notes arrow_drop_up
Recommended Articles
Page :