2011-04-19 7 views
1

내 시스템에서 실행중인 다른 프로세스간에 통신을 제공하는 데 사용되는 c에서 메시지 전달 인터페이스를 설계했습니다. 이 인터페이스는 목적에 맞게 10-12 개의 스레드를 만들고 TCP 소켓을 사용하여 통신을 제공합니다.수신 SIGTERM

잘 작동하지만 때로는 신호 SIGTERM을 수신합니다. 아무도 왜이 신호를 받는지 말해 줄 수 있습니까?

+0

프로세스에서'kill '을 지시하는 것이 있습니까? SIGTERM이 기본 신호입니다. – wallyk

+1

아마도 인터페이스에 신호 처리기를 등록하고 처리기 안에 SIGTERM (struct siginfo_t.si_pid)을 보낸 프로세스의 pid 값을 출력 할 수 있습니다. – itisravi

+0

아무도 내 프로세스에 죽이기를 지시하고있다. 갑자기 SIGTERM을 받는다. – honey

답변

1

인간이 프로세스를 죽이지 않으면 커널이 작동하지 않습니다.

이것은 익숙하지 않은 상태에서 기계를 구하려고 할 때 발생할 수 있습니다 (모든 메모리/스왑/자원을 다 사용했습니다). 프로세스가 실행 중일 때 해당 시스템에서 진행중인 작업을 살펴볼 수 있습니다.