C에서 fork()로 자식프로세스를 생성 후에
exec()를 이용하여 독립된 프로세스를 만들었을 경우에...
독립된 프로세스의 정상 종료, 비정상 종료를 검사할 방법이 있을까요?
exec()를 이용하여 독립된 프로세스를 만들었을 경우에...
독립된 프로세스의 정상 종료, 비정상 종료를 검사할 방법이 있을까요?
C 보다는 유닉스 내용인 것 같습니다.
fork(), exec() 이후 자식프로세스가 끝날 때 exit() 호출합니다.
exit() 할 때 특정 값을 주도록 돼 있고 이 값은 부모 프로세스에서
wait()로 받아올 수 있습니다.
일반적으로 유닉스 프로세스는 종료값이 0일 경우 정상종료로 보기 때문에
wait()에서 받아온 자식프로세스의 종료 값을 보면 알 수 있겠죠.
사용 방법은
int status, exitvalue;
wait(&status);
exitvalue = WEXITSTATUS(status);
이렇게 하셔야 합니다.
fork(), exec() 이후 자식프로세스가 끝날 때 exit() 호출합니다.
exit() 할 때 특정 값을 주도록 돼 있고 이 값은 부모 프로세스에서
wait()로 받아올 수 있습니다.
일반적으로 유닉스 프로세스는 종료값이 0일 경우 정상종료로 보기 때문에
wait()에서 받아온 자식프로세스의 종료 값을 보면 알 수 있겠죠.
사용 방법은
int status, exitvalue;
wait(&status);
exitvalue = WEXITSTATUS(status);
이렇게 하셔야 합니다.
'컴퓨터 > 언어,프로그래밍' 카테고리의 다른 글
fork() 함수에관한건데 좀 도와주세요 (0) | 2009.05.22 |
---|---|
리눅스 gcc 컴파일러 사용 방법 (옵션 정리) (0) | 2009.05.22 |
JAVA - 자바 패키지 컴파일 & 실행 방법 (2) | 2009.05.19 |
[스크랩] 이클립스 (Eclipse) 설치부터 한글화까지 (0) | 2009.05.18 |
C언어 함수 요약 (0) | 2009.05.15 |