Linux——信号(常见信号的值以及对应功能、信号的响应方式)

目录

1、信号

2、常见的信号的值及对应的功能说明 

3、信号名称、信号代号

4、信号的响应方式

(1)三种响应方式:默认的、忽略、自定义

(2)设置响应方式:signal()

(3)默认响应方式 (正常情况下是默认的,Ctrl+c退出)

 (4)自定义响应方式, (通过signal系统调用更改信号的响应方式)。

 (5)练习题目:

 5、手动实现结束进程的kill命令

6、SIGCHLD信号

1、信号

(1)定义:信号是系统响应某个条件而产生的事件,进行接收到信号会执行响应的操作;

(2)与其信号有关的系统调用在<signal.h>头文件中;

(3)信号的代号的存储位置:

        /usr/include/x86_64-linux-gnu/bits/signum.h

2、常见的信号的值及对应的功能说明 

信号名称                                            说明
SIGABORT                                *进程异常终止
SIGALRM                                   超时警告
SIGFPE                                    *浮点运算异常
SIGHUP                                    连接挂断
SIGILL                                     *非法指令
SIGINT                                     终端中断
SIGKILL                                   终止进程(此信号不能被捕获或忽略)
SIGPIPE                                  向无读进程的管道写数据
SIGQT                                     终端退出
SIGSEGV                                *无效内存段访问
SIGTERM                                终止
SIGUSR1                                用户定义信号1
SIGUSR2                                用户定义信号2 

3、信号名称、信号代号

 #define SIGHUP 1
#define SIGINT 2 //键盘按下 Ctrl+c 时,会产生终端中断信号
#define SIGQUIT 3//键盘按下 Ctrl+\ 时,会产生终端退出信号

#define SIGILL 4
#define SIGTRAP 5
#define SIGABRT 6
#define SIGIOT 6
#define SIGBUS 7
#define SIGFPE 8
#define SIGKILL 9 //该信号的响应方式不允许改变
#define SIGUSR1 10
#define SIGSEGV 11
#define SIGUSR2 12
#define SIGPIPE 13 //读端关闭的描述符,写端写入时产生,该信号会终止程序(向无读进程的管道写数据)
#define SIGALRM 14
#define SIGTERM 15 //系统 kill 命令默认发送的信号
#define SIGSTKFLT 16
#define SIGCHLD 17 //子进程结束后,会默认给父进程发送该信号
#defi

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Sweep-

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值