2015-10-15 71 views
0

我是新來的系統調用。這是我的問題。如果segment_A創建'n'進程。總共有多少個進程由下面的代碼創建。叉(系統調用) - 進程號

fork(); 
segment_A 

我的猜測是'2N + 2'過程,包括子和父進程。請澄清一下。理解fork系統調用真令人費解。

在此先感謝。

+1

我會說'2n + 1'。因爲最初的父進程本身不是由該代碼創建的。 – kaylum

回答

2

父進程已經被創建。 fork()創建一個單個附加的過程,然後每個過程創建n個過程。

2

fork創建另一個進程,所以fork系統調用後會有兩個進程,每個進程將創建「n」個新進程進程。所以會有2(n + 1)= 2n + 2個進程,並且2n + 1進程將由代碼段創建。