[완료]fork()문이 반복문에 있을 때, 생성되는 총 프로세스의 수

APRIL1024의 이미지

pid_t pid;
int count = 0;

while(pid = fork()){
if(++count == 3)
break;
}

위와 같은 코드가 있습니다.
총 생성되는 프로세스는 몇개 입니까?

몇 개를 세기 전, fork()문 실행될 때 child의 instruction point는 어디에요? 명확히 모르겠네요. 찾아봐도 이런 질문은 없어서요.
fork()가 실행될 때, parent와 child는 다음 if문을 실행하나요?
만약 그렇다면,

count 0
parent - child1
2^1 = 2개

count 1
parent - child2, child1 - child3
2^2 = 4개

count 2
parent = child4, child2 - child5, child1 - child6, child3 - child7
2^3 = 8개

count 3
... 2^4 = 16개

이렇게 되야 하지 않나요? test를 해보면
parent, child1, child2, child3 이렇게 4개의 프로세스가 생성됩니다.

아시는 분 답변 부탁드립니다. (__)

다즐링의 이미지

그건..

while(fork() == 0) 일때죠.

엄마만 포크시키네요 현재는.
-------------------------------------------------------------------------------------------------------
Life ... http://iz4u.net/blog/

------------------------------------------------------------------------------------------------
Life is in 다즐링

APRIL1024의 이미지

감사합니다.