[英]Linux: how to see if a living process has signal handlers set?
有一個快樂的過程,我想知道它是否設置了一些信號處理程序。 我記得我曾經在某處讀過一些關於此的內容,但卻找不到這樣的信息。 可能嗎?
謝謝
得愛 - 可能這些實際上是信號集......
cat / proc / self / status | grep -i'^ Sig'
SigQ: 0/31404
SigPnd: 0000000000000000
SigBlk: 0000000000000000
SigIgn: 0000000000000803
SigCgt: 0000000180014664
似乎可以制作一個實用程序來打印出來 - 除非有人知道一個已經?
嗯 - 時間讀取procfs的一些內核代碼
從這篇優秀的文章:
http://kernel.org/doc/Documentation/filesystems/proc.txt
SigQ number of signals queued/max. number for queue
SigPnd bitmap of pending signals for the thread
ShdPnd bitmap of shared pending signals for the process
SigBlk bitmap of blocked signals
SigIgn bitmap of ignored signals
SigCgt bitmap of catched signals
檢查/proc/PID/status
文件時可以檢測到這一點。
SigCgt
掩碼顯示應用程序捕獲的信號。 (參見man 7 signal
進行sigmask解釋)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.