Linux信号的基本概念

Linux的基本概念

天天在用信号,它的概念你可知道地准确?信号机制是一种使用信号来进行进程之间传递信息
的方法, 其中信号的全称为软中断信号,简称软中断。
信号只是用 来通知进程发生了什么事情,并不给进程传递数据。
信号都有一个默认值,且有3种处理方式:退出,忽视,注册函数。
信号的几个缺点:
1. 系统开销太大
2. 发送信号的进程需要进行系统调用
3. 数量非常有限
4. 不能传送数据及参数
如果信号发送给一个正在睡眠的进程,那么要看该进程进入睡眠的优先级,如果进程睡眠在可被中断
的优先级上,则唤醒,否则仅仅设置进程表中信号 域相应的位,而不唤醒进程。因为进程检查是否受
到信号的时机是:一个进程在即将从内核态返回用户态时或者在一个进程要进入或离开一个适当的低
调度 优先级睡眠状态时。
内核处理一个进程收到的信号的时机是:在一个进程从内核态返回用户态时,所以,当一个进程在内核运
行时,是不响应信号的,要等到返回用户态时 才处理,处理完再返回用户态。因为进程处理完信号后才会
返回用户态,所以在用户态下不会存在未处理完的信号。
Linux内核支持64个默认信号,1-31为不可靠信号(非实时),34-63为可靠信号(实时),不可靠信号与可靠信号的区别是前者不支持排队的,当时每捕 获就会丢失,然而后者不会,会等待。
信号SIGSTOP(19)和SIGKILL(9)还有两个用户自定义信号是不可以被忽略的
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值