리눅스 콘솔로 프로그램을 돌리려고 합니다.

bao의 이미지

리눅스 상에서 프로그램을 종료 시키지 않고 계속 돌리려고 하는데

비정상 종료일때 처리를 어떻게 해야 하는지 궁금합니다. 윈도우 응용프로그램을 만들때는 프로세스가 끝나는 이벤트 처리를 통해서 메모리 해제등을 했는데...리눅스에서는 어떻게 해야 하나요?/

그리고 kill 명령어 등을 통해 비정상 종료를 막을 수 있는 방법이 있는지도 궁금합니다.

익명 사용자의 이미지

우선 linux signal handler 로 검색해보세요.

종료와 관련된 시그널은 sigkill, sigterm, sigint 등이 있습니다. 아래 링크에 간단히 잘 정리되어 있네요.
https://www.quora.com/What-is-the-difference-between-the-SIGINT-and-SIGTERM-signals-in-Linux-What%E2%80%99s-the-difference-between-the-SIGKILL-and-SIGSTOP-signals