fork()
글쓴이: segfault / 작성시간: 화, 2004/06/22 - 1:06오후
pid_t child; int main(void) { if((child = fork()) == 0) { child_main(); } return 0; }
fork() 시스템 콜로 분기된 자식 프로세스가 어떻게 끝나게 되는지 궁금합니다.
자식내에서 exit()함수를 호출하면 부모 프로세스도 죽어버리는것 같군요.
만약 자식이 child_main() 함수를 벗어나면 자식 역시 main함수의 return 0;으로 끝나게 되는건지요?
Forums:
[quote]자식내에서 exit()함수를 호출하면 부모 프로세스도 죽어버
fork에 관해서 좀더 공부하심이..... :)
그나저나 백수 언제 탈출하냐... ㅡㅡ; 배고파라.
소스를 보면........ㅠ.ㅜ
지금 올리신 예제를 보면 fork() 후에 부모 프로세스가 죽어버리는 것은 당연합니다.
자식 프로세스의 유언을 받아줄 아무런 준비도 없이 바로 return 해버리니 부모가 죽는것은 당연하겠군요......
자식의 유언을 들어주세요....
Stevens의 Advanced Unix Programming을 보시면 샘플이 많이 있습니다.
/***************************************************
* 가장 심플한 것이 가장 아름다운 것이다.
***************************************************/
http://bbs.kldp.org/viewtopic.php?t=3798
http://bbs.kldp.org/viewtopic.php?t=37983&highlight=
쪼금더 기초적인 것을 공부하심이.. UNP 추천입니다.
언제나 시작
댓글 달기