一、信号的基本概念
信号是系统响应某个条件而产生的事件,进程接收到信号会执行相应的操作。(软中断)
与信号有关的系统调用在"signal.h"头文件中有声明。
常见信号值,及对应的功能说明:

信号的值在系统源码中的定义如下:



二、修改信号的相应方式 signal()
1.signal()
signal():替换信号功能
bash
typedef void (*sighandle_t)(int);
sighandle_t (*signal)(int sig, sighandle_t sig_fun);
sig:修改的信号值
sig_fun:修改后的行为
2.常用信号SIGINT
SIGINT :该信号由 Ctrl+C 产生,功能是终端中断。

2.SIG_IGN
SIG_IGN:忽略该信号

3.SIG_DFL
SIG_DFL:恢复默认行为

三、发送信号 kill()
kill():可以向指定的进程发送指定的信号。
bash
int kill(pid_t pid, int sig);
pid > 0:指定将信号发送给那个进程
pid == 0:指定被发送到和当前进程在同一个进程组的进程
pid == -1:将信号发送给系统上有权限发送的所有的进程
pid < -1:将信号发送给进程组id等于pid绝对值,并且有权限发送的所有的进程
sig:指定发送信号的类型
