fork() 가 너무 헷갈려요 ㅠㅜ

익명 사용자의 이미지

int child = fork() //C1
int c=5;
if(child==0) c+=5;
else{
child=fork(); //C2
c++10;
}
if(child) c+=5;

---------------------------------------------
이렇게 되면,,,
P를 중심으로 C1,C2가 생성되고..
P의 C는 5+10 = 15
C1의 C는 5+5+5 = 15
C2의 C는 5+5..=10? 인가요?...

너무 헷갈리네요 ㅠㅠ

pynoos의 이미지

명령이 test01 이라면 strace -f ./test01 이런식으로 실행해보세요.
중간에 sleep(5) 정도를 주시면 더 잘 확인하실 수 있습니다.