附录:Linux信号列表

完整对照表

信号取值默认动作含义(发出信号的原因)
SIGHUP1Term终端的挂断或进程死亡
SIGINT2Term来自键盘的中断信号
SIGQUIT3Core来自键盘的离开信号
SIGILL4Core非法指令
SIGABRT6Core来自abort的异常信号
SIGFPE8Core浮点例外
SIGKILL9Term杀死
SIGSEGV11Core段非法错误(内存引用无效)
SIGPIPE13Term管道损坏:向一个没有读进程的管道写数据
SIGALRM14Term来自alarm的计时器到时信号
SIGTERM15Term终止
SIGUSR130,10,16Term用户自定义信号1
SIGUSR231,12,17Term用户自定义信号2
SIGCHLD20,17,18Ign子进程停止或终止
SIGCONT19,18,25Cont如果停止,继续执行
SIGSTOP17,19,23Stop非来自终端的停止信号
SIGTSTP18,20,24Stop来自终端的停止信号
SIGTTIN21,21,26Stop后台进程读终端
SIGTTOU22,22,27Stop后台进程写终端
SIGBUS10,7,10Core总线错误(内存访问错误)
SIGPOLLTermPollable事件发生(Sys V),与SIGIO同义
SIGPROF27,27,29Term统计分布图用计时器到时
SIGSYS12,-,12Core非法系统调用(SVr4)
SIGTRAP5Core跟踪/断点自陷
SIGURG16,23,21Ignsocket紧急信号(4.2BSD)
SIGVTALRM26,26,28Term虚拟计时器到时(4.2BSD)
SIGXCPU24,24,30Core超过CPU时限(4.2BSD)
SIGXFSZ25,25,31Core超过文件长度限制(4.2BSD)
SIGIOT6CoreIOT自陷,与SIGABRT同义
SIGEMT7,-,7Term
SIGSTKFLT-,16,-Term协处理器堆栈错误(不使用)
SIGIO23,29,22Term描述符上可以进行I/O操作
SIGCLD-,-,18Ign与SIGCHLD同义
SIGPWR29,30,19Term电力故障(System V)
SIGINFO29,-,-与SIGPWR同义
SIGLOST-,-,-Term文件锁丢失
SIGWINCH28,28,20Ign窗口大小改变(4.3BSD, Sun)
SIGUNUSED-,31,-Term未使用信号(will be SIGSYS)

非可靠信号

名称说明
SIGHUP连接断开
SIGINT终端中断符
SIGQUIT终端退出符
SIGILL非法硬件指令
SIGTRAP硬件故障
SIGABRT异常终止(abort)
SIGBUS硬件故障
SIGFPE算术异常
SIGKILL终止
SIGUSR1用户定义信号
SIGUSR2用户定义信号
SIGSEGV无效内存引用
SIGPIPE写至无读进程的管道
SIGALRM定时器超时(alarm)
SIGTERM终止
SIGCHLD子进程状态改变
SIGCONT使暂停进程继续
SIGSTOP停止
SIGTSTP终端停止符
SIGTTIN后台读控制tty
SIGTTOU后台写向控制tty
SIGURG紧急情况(套接字)
SIGXCPU超过CPU限制(setrlimit)
SIGXFSZ超过文件长度限制(setrlimit)
SIGVTALRM虚拟时间闹钟(setitimer)
SIGPROF梗概时间超时(setitimer)
SIGWINCH终端窗口大小改变
SIGIO异步I/O
SIGPWR电源失效/重启动
SIGSYS无效系统调用

可靠信号

名称用户自定义
SIGRTMIN
SIGRTMIN+1
SIGRTMIN+2
SIGRTMIN+3
SIGRTMIN+4
SIGRTMIN+5
SIGRTMIN+6
SIGRTMIN+7
SIGRTMIN+8
SIGRTMIN+9
SIGRTMIN+10
SIGRTMIN+11
SIGRTMIN+12
SIGRTMIN+13
SIGRTMIN+14
SIGRTMIN+15
SIGRTMAX-14
SIGRTMAX-13
SIGRTMAX-12
SIGRTMAX-11
SIGRTMAX-10
SIGRTMAX-9
SIGRTMAX-8
SIGRTMAX-7
SIGRTMAX-6
SIGRTMAX-5
SIGRTMAX-4
SIGRTMAX-3
SIGRTMAX-2
SIGRTMAX-1
SIGRTMAX