linux信号实现机制

进程p2向进程p1投放信号,需要经过linux内核,投放的时候,linux内核向p1的task_struct中的信号向量表中添加相应的未决信号,然后等到p1陷入内核要回到用户态时,检查这个信号向量表,检查到里面有未决信号,就从内核态跳到相应的用户态的处理函数,处理完后,又从用户态跳回到内核,再从内核跳到正常执行的用户态位置继续执行。
这里写图片描述

这里写图片描述
上面所说的在内核的检查时机,包括用户的系统调用,中断而由用户态进入内核态,由于信号要等到进入内核态才会检查到,所以,如果在没有系统调用的情况下,用等到时间中断到来,进程从内核态要切回用户态的时候才会检查,所以,信号存在延迟。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值