2010-11-02 125 views
3

我們有一個守護程序服務器程序,它分派一個孩子。當孩子退出時,Parent正在收到SIGTERM信號。所以,我們想知道如何找到誰將sigterm信號發送到我的過程或我的過程組?

1)誰發送這個SIGTERM

2)SIGTERM是否僅限於父母或其團體?

3)在這種情況下可以生成SIGTERM的可能方式是什麼?

4)是否可以掩蓋這個SIGTERM信號?如果是的話,這個電話的副作用是什麼?

回答

4

添加到@肋骨的回答是:

strace的顯示的當前版本的信息

read(0, 0x7f4ab8353000, 4096)   = ? ERESTARTSYS (To be restarted if SA_RESTART is set) 
--- SIGTERM {si_signo=SIGTERM, si_code=SI_USER, si_pid=1, si_uid=0} --- 
+++ killed by SIGTERM +++ 

我可以看到我的過程是由PID#1殺死(INIT,即暴發戶)

ps我的CentOS(6.0 & 6.4)沒有它,所以我建立它從http://sourceforge.net/projects/strace/,不知道什麼版本添加它

相關問題