1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP 6) SIGABRT
7) SIGBUS 8) SIGFPE 9) SIGKILL 10) SIGUSR111) SIGSEGV 12) SIGUSR2
13) SIGPIPE 14) SIGALRM 15) SIGTERM16) SIGSTKFLT 17) SIGCHLD 18) SIGCONT
19) SIGSTOP 20) SIGTSTP21) SIGTTIN 22) SIGTTOU 23) SIGURG 24) SIGXCPU
25) SIGXFSZ26) SIGVTALRM 27) SIGPROF 28) SIGWINCH 29) SIGIO 30) SIGPWR
31) SIGSYS 34) SIGRTMIN
35) SIGRTMIN+1 36) SIGRTMIN+2 37) SIGRTMIN+3
38) SIGRTMIN+4 39) SIGRTMIN+5 40) SIGRTMIN+6 41) SIGRTMIN+7 42) SIGRTMIN+8
43) SIGRTMIN+9 44) SIGRTMIN+10 45) SIGRTMIN+11 46) SIGRTMIN+12 47) SIGRTMIN+13
48) SIGRTMIN+14 49) SIGRTMIN+15 50) SIGRTMAX-14 51) SIGRTMAX-13 52) SIGRTMAX-12
53) SIGRTMAX-11 54) SIGRTMAX-10 55) SIGRTMAX-9 56) SIGRTMAX-8 57) SIGRTMAX-7
58) SIGRTMAX-6 59) SIGRTMAX-5 60) SIGRTMAX-4 61) SIGRTMAX-3 62) SIGRTMAX-2
在命令行支持kill -l,可以显示所有的信号列表
总共62个信号,也就是说每个进程都可以接收的信号种类有62种。1~64为信号的编号,SIG***为信号的宏名。
(1) 为什么这么多信号
(2)这么多信号,记不住怎么办?
信号宏名 | 信号编号 | 说明 | 系统默认处理方式 |
---|---|---|---|
SIGABRT | 6 | 终止进程,调用abort函数时产生 | 终止,产生core文件 |
SIGALRM | 14 | 超时,调用alarm函数时产生 | 终止 |
SIGBUS | 7 | 硬件故障 | 终止,产生core文件 |
SIGCHLD | 17 | 子进程状态改变 | 忽略 |
SIGINT | 2 | 终止进程(Ctrl+C) | 终止 |
SIGIO | 29 | 异步通知信号 | 终止 |
SIGKILL | 9 | 无条件终止一个进程,不可以被捕获或忽略 | 终止 |
SIGPIPE | 13 | 写没有读权限的管道文件时 | 终止 |
SIGPOLL | 8 | 轮训事件,涉及POLL机制 | 终止 |
SIGTERM | 15 | kill PID时默认发送的信号 | 终止 |
SIGQUIT | 3 | 终止进程( Ctrl+\ ) | 终止,产生core文件 |
SIGSEGV | 11 | 无效存储访问(指针错误) | 终止 |
SIGUSER1 | 10 | 用户自定义信号1 | 终止 |
SIGUSER2 | 10 | 用户自定义信号2 | 终止 |
原文:https://www.cnblogs.com/doitjust/p/12622376.html