作者jordan1997 (allenwalker)
看板Grad-ProbAsk
標題[理工] 101 交大 os
時間Tue Nov 10 12:56:41 2020
想請教一下解答中用紅筆圈起來的那個a是怎麼產生的,爲何同樣產生自同一個fork()的c
hild-process 一個有一個卻沒有?
https://i.imgur.com/SquTvlw.jpg
https://i.imgur.com/Uos3J3a.jpg
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.112.25.98 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Grad-ProbAsk/M.1604984203.A.1FA.html
→ CSGD: If (fork()=0)那一行child p1會加入a, 這時main是空而p1是 11/10 14:11
→ CSGD: a, 下一次的fork各生一個, 所以一個空一個a 11/10 14:11
→ jordan1997: 懂了,所以是因爲兩個紅色child process 來自的parent 11/10 14:19
→ jordan1997: process 中buffer不同,因此他們copy 的內容也不同 11/10 14:19
→ CSGD: 沒錯~ 11/10 17:50