Linux????е???????????????
???????????? ???????[ 2013/2/16 10:27:07 ] ????????
????sys_tkill????????????pecific_send_sig_info()?????????????????????pecific_send_sig_info()(kernel/signal.c)????壺
static int
specific_send_sig_info(int sig?? struct siginfo *info?? struct task_struct *t)
{
int ret = 0;
if (!irqs_disabled())
BUG();
assert_spin_locked(&t->sighand->siglock);
if (((unsigned long)info > 2) && (info->si_code == SI_TIMER))
/*
* Set up a return to indicate that we dropped the signal.
*/
ret = info->si_sys_private;
/*????????*/
/* Short-circuit ignored signals. */
if (sig_ignored(t?? sig))
goto out;
/* Support queueing exactly one non-rt signal?? so that we
can get more detailed information about the cause of
the signal. */
if (LEGACY_QUEUE(&t->pending?? sig))
goto out;
ret = send_signal(sig?? info?? t?? &t->pending);//??????????
if (!ret && !sigismember(&t->blocked?? sig))
signal_wake_up(t?? sig == SIGKILL);
out:
return ret;
}
???????????sig_ignored??????????????????鷢????????????????????????????????????????λ?????鵱????????????????????????????????????????????????????κδ??????????send_signal?????????????????send_signal()??????????????sys_tkill?????????????????send_signal()??????????????????
?????????????send_signal()?????????t->pending?????????Private Signal Queue?????????????????????????signal_wake_up()????????????????????????y????????????????л?????????????????????
??????
???·???
??????????????????
2023/3/23 14:23:39???д?ò??????????
2023/3/22 16:17:39????????????????????Щ??
2022/6/14 16:14:27??????????????????????????
2021/10/18 15:37:44???????????????
2021/9/17 15:19:29???·???????·
2021/9/14 15:42:25?????????????
2021/5/28 17:25:47??????APP??????????
2021/5/8 17:01:11