1、linux进程产生信号,并且设置此信号要传递的对象(进程),然后传给内核。
2、内核怎么操作此信号呢,内核根据接收进程的设置是否阻塞,选择性的发给接收进程。如果进程阻塞该信号,内核会暂时保留该信号,不传递,知道进程解除阻塞。如果接收进程退出,则丢弃此信号。
3、目的进程接收到此信号后,会根据当前进程对此信号设置的处理方式,中断当前的任务,执行中断服务程序。对于接收进程来说,这种方式属于异步。
因此这个过程用到的函数有
signal(sig,pid)
kill(pid,sig);
其次是中断处理函数的返回值必须是 VOID.