linux进程间通信之信号(signal)

1、概念:
      软中断信号(signal,又简称为信号)用来通知进程发生了异步事件。信号是在软件层上对中断机制的一种模拟,
     是一种异步通信方式。

2、应用:
     信号可以直接进行用户空间和内核进程之间的交互,内核进程可以利用signal来通知用户空间发生的系统事件,
      反之亦然。

3、信号产生,传递及其响应过程:

1、linux下信号的类型:(kill -l 查看)

 1) SIGHUP(终止)    2) SIGINT(终止)      3) SIGQUIT           4) SIGILL              5) SIGTRAP
 6) SIGABRT           7) SIGBUS           8) SIGFPE           9) SIGKILL             10) SIGUSR1
11) SIGSEGV          12) SIGUSR2        13) SIGPIPE          14) SIGALRM(闹钟)  15) SIGTERM
16) SIGSTKFLT        17) SIGCHLD        18) SIGCONT         19) SIGSTOP           20) SIGTSTP
21) SIGTTIN           22) SIGTTOU        23) SIGURG         24) SIGXCPU           25) SIGXFSZ
26) 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+1045) SIGRTMIN+11        46) SIGRTMIN+12  47) SIGRTMIN+13
48) SIGRTMIN+14     49) SIGRTMIN+1550) SIGRTMAX-14        51) SIGRTMAX-13  52) SIGRTMAX-12
53) SIGRTMAX-11     54) SIGRTMAX-1055) SIGRTMAX-9        56) SIGRTMAX-8  57) SIGRTMAX-7
58) SIGRTMAX-6     59) SIGRTMAX-5    60) SIGRTMAX-4        61) SIGRTMAX-3  62) SIGRTMAX-2
63) SIGRTMAX-1     64) SIGRTMAX

2、常用的几个信号发送捕捉函数
linux进程间通信之信号(signal)_第1张图片



其中信号的捕捉处理函数:sighandler_t signal(int signum, sighandler_t handler);
handler 的值为SIG_IGN时,表示忽略捕捉到的信号,值为:SIG_DFL 时表示按系统默认方式处理信号

你可能感兴趣的:(Linux)