文档章节

程序员应该了解的UNIX常用信号

imecho
 imecho
发布于 2016/10/27 11:33
字数 631
阅读 4
收藏 0
信号的概念:

首先,每个信号都有一个名字。这些名字都以三个字符 SIG开头

SIGABRT由调用abort函数产生,进程非正常退出

SIGALRM用alarm函数设置的timer超时或setitimer函数设置的interval timer超时

SIGBUS某种特定的硬件异常,通常由内存访问引起

SIGCANCEL由Solaris Thread Library内部使用,通常不会使用

SIGCHLD进程Terminate或Stop的时候,SIGCHLD会发送给它的父进程。缺省情况下Signal会被忽略

SIGCONT当被stop的进程恢复运行的时候,自动发送

SIGEMT和实现相关的硬件异常

SIGFPE数学相关的异常,如被0除,浮点溢出,等等

SIGFREEZESolaris专用,Hiberate或者Suspended时候发送

SIGHUP发送给具有Terminal的Controlling Process,当terminal被disconnect时候发送

SIGILL非法指令异常

SIGINFOBSD signal。由Status Key产生,通常是CTRL+T。发送给所有Foreground Group的进程

SIGINT由Interrupt Key产生,通常是CTRL+C或者DELETE。发送给所有ForeGround Group的进程

SIGIO异步IO事件

SIGIOT实现相关的硬件异常,一般对应SIGABRT

SIGKILL无法处理和忽略。中止某个进程

SIGLWP由Solaris Thread Libray内部使用

SIGPIPE在reader中止之后写Pipe的时候发送

SIGPOLL当某个事件发送给Pollable Device的时候发送

SIGPROFSetitimer指定的Profiling Interval Timer所产生

SIGPWR和系统相关。和UPS相关。

SIGQUIT输入Quit Key的时候(CTRL+\)发送给所有Foreground Group的进程

SIGSEGV非法内存访问

SIGSTKFLTLinux专用,数学协处理器的栈异常

SIGSTOP中止进程。无法处理和忽略。

SIGSYS非法系统调用

SIGTERM请求中止进程,kill命令缺省发送

SIGTHAWSolaris专用,从Suspend恢复时候发送

SIGTRAP实现相关的硬件异常。一般是调试异常

SIGTSTPSuspend Key,一般是Ctrl+Z。发送给所有Foreground Group的进程

SIGTTIN当Background Group的进程尝试读取Terminal的时候发送

SIGTTOU当Background Group的进程尝试写Terminal的时候发送

SIGURG当out-of-band data接收的时候可能发送

SIGUSR1用户自定义signal 1

SIGUSR2用户自定义signal 2

SIGVTALRMsetitimer函数设置的Virtual Interval Timer超时的时候

SIGWAITINGSolaris Thread Library内部实现专用

SIGWINCH当Terminal的窗口大小改变的时候,发送给Foreground Group的所有进程

SIGXCPU当CPU时间限制超时的时候

SIGXFSZ进程超过文件大小限制

SIGXRESSolaris专用,进程超过资源限制的时候发送

© 著作权归作者所有

上一篇: HTTP状态码
下一篇: PHP垃圾回收机制
imecho
粉丝 0
博文 14
码字总数 28532
作品 0
广州
私信 提问
停止或暂停程序的信号: intr、quit、stop

Unix提供了几种停止或暂停程序的信号。这些信号是intr、quit和stop。 intr intr信号有两个用途:首先可以使用它停止一个僵死的程序。但是一些程序被编程为忽略intr信号。在这种情况下,程序总...

shamgod_code
2016/12/19
31
0
IO基础入门之Linux网络I/O模型简介

Linux的内核将所有外部设备都看做一个文件来操作,对一个文件的读写操作会调用内核提供的系统命令,返回一个file descriptor(fd,文件描述符 )。而对一个socket的读写也会有相应的描述符,...

柳哥
2015/01/12
0
0
Linux下进程间Socket通信调试debug方法

在一个复杂的软件系统中,往往需要有各个组件之间的数据传递,在组件间数据传递过程中,又会不可避免的出现一些小问题,这时候我们就需要来进行debug了,由于最近的一个系统使用到了collect...

hiubuntu
2017/06/28
0
0
Linux下Fork与Exec使用

转自:http://blog.csdn.net/zhoubangtao/article/details/53888792 一、引言   对于没有接触过Unix/Linux操作系统的人来说,fork是最难理解的概念之一:它执行一次却返回两个值。fork函数...

caoxiaohong1005
2017/12/01
0
0
突然发现到今天已经很难找到对底层理解这么透彻的人

链接: http://blog.csdn.net/elssann/archive/2004/10/25/150088.aspx 原文: 在VC版的网络编程区,基本上每天都可以看到大量关于IOCP(完成端口)的帖子和讨论,很多人比较反感IOCP,特别是...

刘小兵2014
2010/12/07
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Oracle SQL语法实例合集

如需转载请注明出处https://my.oschina.net/feistel/blog/3052024 目的:迅速激活Oracle SQL 参考:《Oracle从入门到精通》 ------------------------------------------------------------......

LoSingSang
今天
2
0
增加 PostgreSQL 服务进程的最大打开文件数

https://serverfault.com/questions/628610/increasing-nproc-for-processes-launched-by-systemd-on-centos-7 要在systemd的配置里加才行...

helloclia
今天
2
0
组合模式在商品分类列表中的应用

在所有的树形结构中最适合的设计模式就是组合模式,我们看看常用商品分类中如何使用。 先定义一个树形结构的商品接口 public interface TreeProduct { List<TreeProduct> allProducts(...

算法之名
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部