좀비 프로세스 처리 방법
글쓴이: bigbaby / 작성시간: 목, 2011/03/10 - 9:07오후
안녕하세요 fork()하여 약 100개의 자식 프로세스를 생성하였습니다.
내부 ipc로 부모 프로세스에게 중지 명령을 내리고,
중지 ipc 수신시 호출되는 exit()함수에서 모든 자식 프로세스를 죽게 처리하였씁니다.
자식프로세스에게 중지ipc를 내리고, 몇 초간 대기 후 그래도 살아있으면 SIGKILL 시그널을 보냈습니다.
물론, 부모프로세스는 SIGCHILD 핸들러를 세팅해놨으며, waitpid()를 while 루프로 돌리도록 처리하였습니다.
하지만 가끔 자식 프로세스가 좀비가 되는 경우가 생기는거 같은데요..
아마, 자식보다 부모프로세스가 먼저 죽어서 그런것 같은데..
자식 프로세스가 다 죽은 다음에 부모가 죽도록 해야될거 같은데..어떻게 처리해야될까요???
시그널 핸들러 외에, exit()함수에서는 wait를 호출하지 않습니다..이것도 문제가 될 수 있는지...
답변 부탁드립니다
Forums:
댓글 달기