转自:http://blog.csdn.net/muge0913/article/details/7322710

信号及其简介

信号是一种进程通信的方法,他应用于异步事件的处理。信号的实现是一种软中断。它被发送为一个正在运行的进程,已告知进程某个事件发生了。

SIGHUP           本信号在用户终端连接(正常或非正常)结束时发出,通常是在终端的控制进程结束时, 通知同一session内的各个作业,这时它们与控制终端不再关联
SIGINT 程序终止(interrupt)信号,通常是从终端发出中断指令如ctrl+c或delete键
SIGQUIT 和SIGINT类似,但由QUIT字符(通常是Ctrl+\)来控制.进程在因收到SIGQUIT 退出时会产生core文件,在这个意义上类似于一个程序错误信号.
SIGILL 执行了非法指令.通常是因为可执行文件本身出现错误,或者试图执行数据段. 堆栈溢出时也有可能产生这个信号.
SIGTRAP 跟踪陷阱信号,由断点指令或其它trap指令产生.由debugger使用.
SIGABRT 调用abort时产生的信号,将会使进程非正常结束。
SIGIOT IO错误信号.
SIGBUS 系统总线错误时产生的信号,非法地址,包括内存地址对齐(alignment)出错.eg: 访问一个四个字长的整数, 但其地址不是4的倍数.
SIGFPE 在发生致命的算术运算错误时发出.不仅包括浮点运算错误,还包括溢出及除数为0等其它所有的算术的错误.
SIGKILL 可以终止任何进程的信号,只能由管理员发出,该信号不会被捕捉和忽略。
SIGUSR1 留给用户使用,用户可在应用程序中自行定义。
SIGUSR2 留给用户使用
SIGSEGV 试图访问未分配给自己的内存,或试图往没有写权限的内存地址写数据,非法使用内存地址信号。
SIGPIPE 当一个进程对管道进行完读后进行写时产生的信号。
SIGALRM 时钟定时信号,由alarm函数设定的时间终止时产生的信号。
SIGTERM 程序结束(terminate)信号,与SIGKILL不同的是该信号可以被阻塞和处理.通常用来要求程序自己正常退出.shell命令kill缺省产生这个信号.
SIGCHLD 子进程结束或中断时产生该信号,父进程会收到这个信号.通过该信号父进程可以知道子进程的运行情况。但大多数情况下此信号会被忽略。
SIGCONT 让一个停止(stopped)的进程继续执行.本信号不能被阻塞.
SIGSTOP 停止(stopped)进程的执行.注意它和terminate以及interrupt的区别:   该进程还未结束, 只是暂停执行.本信号不能被阻塞,处理或忽略.
SIGTSTP 停止进程的运行,但该信号可以被处理和忽略.用户键入SUSP字符时 (通常是Ctrl-Z) 发出这个信号
SIGTTIN 当后台作业要从用户终端读数据时,中断驱动器产生的信号。当读入数据的进程阻塞或忽略这个信号,或读取数据的进程所在进程组是一个孤立进程组时,信号不会发生,并且发生读错误。errno被设为ETO
SIGTTOU 类似于SIGTTIN,当后台作业要从用户终端读数据时,中断驱动器产生的信号。当读入数据的进程阻塞或忽略这个信号,或读取数据的进程所在进程组是一个 孤立进程组时,信号不会发生,并且发生读错误。errno被设为ETO。唯一不同的是进程可以选择后台写。
SIGURG socket上出现紧急情况是发出的信息。
SIGXCPU 超过CPU时间资源限制.这个限制可以由getrlimit/setrlimit来读取/改变
SIGXFSZ 超过文件大小资源限制.
SIGVTALRM 虚拟时钟信号.类似于SIGALRM,但是计算的是该进程占用的CPU时间.
SIGPROF 类似于SIGALRM/SIGVTALRM,但包括该进程用的CPU时间以及系统调用的时间.
SIGWINCH 窗口大小改变时发出.
SIGIO 文件描述符准备就绪,可以开始进行输入/输出操作.
SIGPWR Power failure 电源失效信号。
SIGEMT 实时硬件发生错误时产生的信号。

有 两个信号可以停止进程:SIGTERM和SIGKILL。 SIGTERM比较友好,进程能捕捉这个信号,根据您的需要来关闭程序。在关闭程序之前,您可以结束打开的记录文件和完成正在做的任务。在某些情况下,假 如进程正在进行作业而且不能中断,那么进程可以忽略这个SIGTERM信号。

对于SIGKILL信号,进程是不能忽略的。这是一个 “我不管您在做什么,立刻停止”的信号。假如您发送SIGKILL信号给进程,Linux就将进程停止在那里。

注: 有六个信号被称为作业信号,SIGCHLD,SIGCONT,SIGSTOP,SIGSTP,SIGTTNI,SIGTTOU.这些信号都是用于协调和组 织各个进程的,也就是实现所谓的作业控制。通常情况下用户不需要对这些信号进行处理,shell会自动完成对这些信号的处理工作。信号之间是相互影响的, 当进程接收到SIGCONT信号时,被系统悬挂的SIGSTOP,SIGSTP,SIGTTIN,SIGTTOU将失效。同样进程接收到 SIGSTOP,SIGSTP,SIGTTIN,SIGTTOU时,SIGCONT将失效。

【转载】Linux 信号列表的更多相关文章

  1. linux 信号列表和基本作用

    我们运行如下命令,可看到Linux支持的信号列表: $ kill -l 1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP 6) SIGABRT 7 ...

  2. Linux信号列表

    我们运行如下命令,可看到Linux支持的信号列表: ~$ kill -l1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL5) SIGTRAP 6) SIGABRT 7) ...

  3. 非常好的一篇对linux信号(signal)的解析 (转载)【转】

    转自:https://blog.csdn.net/return_cc/article/details/78845346 Linux信号(signal) 机制分析 转载至:https://www.cnb ...

  4. linux kill信号列表

    linux kill信号列表 $ kill -l1) SIGHUP       2) SIGINT       3) SIGQUIT      4) SIGILL5) SIGTRAP      6) ...

  5. linux信号基本概念及如何产生信号

    linux信号基本概念及如何产生信号 摘自:https://blog.csdn.net/summy_j/article/details/73199069 2017年06月14日 09:34:21 阅读 ...

  6. [Linux]Linux系统调用列表

    本文列出了大部分常见的Linux系统调用,并附有简要中文说明. 以下是Linux系统调用的一个列表,包含了大部分常用系统调用和由系统调用派生出的的函数.这可能是你在互联网上所能看到的唯一一篇中文注释的 ...

  7. linux信号机制与python信号量

    1.信号本质 软中断信号(signal,又简称为信号)用来通知进程发生了异步事件.在软件层次上是对中断机制的一种模拟,在原理上,一个进程收到一个信号与处理器收到一个中断请求可以说是一样的.信号是进程间 ...

  8. Linux信号基础

    Linux信号基础   作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! Linux进程基础一文中已经提到,Linux以进程为单位来 ...

  9. Linux信号(signal) 机制分析

    Linux信号(signal) 机制分析 [摘要]本文分析了Linux内核对于信号的实现机制和应用层的相关处理.首先介绍了软中断信号的本质及信号的两种不同分类方法尤其是不可靠信号的原理.接着分析了内核 ...

随机推荐

  1. maven项目断点依赖maven插件

         

  2. Quartz Cron表达式 在线生成器

    Cron Expressions——Cron 表达式 按顺序依次为 秒(0~59) 分钟(0~59) 小时(0~23) 天(月)(0~31,但是你需要考虑你月的天数) 月(0~11) 天(星期)(1~ ...

  3. 如何让ConfigurationManager打开任意的配置文件

    VisualStudio的配置文件很好很强大,用来保存数据库连接字符串或键值对都非常方便,只需要通过ConfigurationManager的ConnectionStrings或AppSettings ...

  4. ZOJ 2334 Monkey King

    并查集+左偏树.....合并的时候用左偏树,合并结束后吧父结点全部定成树的根节点,保证任意两个猴子都可以通过Find找到最厉害的猴子                       Monkey King ...

  5. Visual Studio图片注释image-comments扩展

            有一个开源的Visual Studio小工具image-comments,它用于在源代码注释中插入图片,您可以到这儿下载.目前支持Visual Studio 2010/2012 Sta ...

  6. 人见人爱A^B

    求A^B的最后三位数表示的整数.说明:A^B的含义是“A的B次方”   Input 输入数据包含多个测试实例,每个实例占一行,由两个正整数A和B组成(1<=A,B<=10000),如果A= ...

  7. 关于CSS Hack

    CSS Hack由于不同厂商的浏览器,如Internet Explorer,Safari,Mozilla Firefox,Chrome 等,或者是同一厂商的浏览器的不同版本,如IE6和IE7,对CSS ...

  8. Sky数 2097

    Problem Description Sky从小喜欢奇特的东西,而且天生对数字特别敏感,一次偶然的机会,他发现了一个有趣的四位数2992,这个数,它的十进制数表示,其四位数字之和为2+9+9+2=2 ...

  9. 数据准备&lt;2&gt;:数据质量检查-实战篇

    上一篇文章:<数据质量检查-理论篇>主要介绍了数据质量检查的基本思路与方法,本文作为补充,从Python实战角度,提供具体的实现方法. 承接上文,仍然从重复值检查.缺失值检查.数据倾斜问题 ...

  10. Android/Linux Thermal框架分析及其Governor对比

    图表 1 Thermal框架 随着SoC性能的快速提升,功耗也极大提高,带来的负面影响是SoC的温度提高很快,甚至有可能造成物理损坏.同时功耗浪费也降低了电池寿命. 从上图可知,Thermal框架可以 ...