Linux的信号保存 && 信号处理(了解)

目录

信号保存

信号集操作函数

信号捕捉


信号抵达和信号未决

信号递达:指信号被内核发送到进程并且被该进程接收的过程

信号未决:指信号已经被发送到进程,但由于种种原因暂时没有被处理

注意事项:

1、进程会对于已经递达的信号进行处理,处理方式分为:默认、忽略、捕捉

  • 默认一些信号有系统默认的处理方式,比如进程终止、核心转储等
  • 忽略进程可以忽略某些信号,例如 SIG_IGN,来避免中断
  • 捕捉通过定义一个信号处理函数,进程可以在信号递达时执行自定义操作

2、未决信号存储在进程的未决信号队列中,等到进程允许处理信号时再进行处理

3、进程可以阻塞某个信号,被阻塞的信号一旦产生永不递达,一直未决,直到主动解除阻塞

4、进程识别信号的方式 = 两张位图 + 一张函数指针数组

信号集操作函数

#include <signal.h>
int sigemptyset(sigset_t *set);
int sigfillset(sigset_t *set);
int sigaddset (sigset_t *set, int signo);
int sigdelset(sigset_t *set, int signo);
int sigismember(const sigset_t *set, int signo);

信号捕捉

32、00:30向后都是,精力有限以后再补充

32和33如果有时间可以重新观看

~over~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值