linux系统知识 - 信号基础

作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明。谢谢!

参考链接

http://www.cnblogs.com/vamei/archive/2012/10/04/2711818.html

作用

       向进程传递信息的方式。

使用情景

       内核扮演着进程管理员的角色

       内核需要通知进程信息

       A进程要告诉B进程一定的信息

产生方式

       内核产生,告诉某进程(如除0错误)

       某一进程产生,要告诉其他进程(如手机上的清理后台应用)

执行过程

       每个进程的附加信息中有位置专门用于保存接收到的信号。

       当进程执行系统调用时,在系统调用完成后退出内核时,都回顺便查看信号。

       如果有信号,就会执行该信号对应的操作,这个步骤称信号处理(signal disposition)/执行(deliver)信号

       从信号生成到信号传递,信号处于等待状态(pending)

信号阻塞

       我们可以设计程序,让其生成的进程阻塞(block)某些信号(就是让系统暂时保留信号待以后发送,防止打断敏感的操作),直至进程取消阻塞(unblock)或者无视信号

常见信号

       SIGINT   interrupt打断,[Ctrl]+c或者从shell中发出信号

       SIGQUIT       quit退出,[Ctrl]+\或者从shell中发出信号

       SIGSTOP       stop暂停,[Ctrl]+z或者从shell中发出信号

       SIGCONT      通知暂停的进程继续

       SIGALRM      定时器,程序在一定时间之后才生成该信号

       shell中发出信号的方法:kill

       man 7 signal查看更多信号

信号处理

       留待研究

posted @ 2017-12-23 17:13  yc紫日  阅读(136)  评论(0编辑  收藏  举报