• signal是一个系统调用。是一种特殊的中断,当某种特定的“软件中断”发生时。用于调用的程序。中断通常是程序运行中出现的特殊情况,如引用特殊内存中的非法地址, 浮点数被0除。

  • signal()的原型为:

    #include <signal.h>

    void(*signal(int hum,void(*func)(int)))(int)。

  • signal中的int參数及其含义

    SIGHUP 1 A 终端挂起或者控制进程终止

    SIGINT 2 A 键盘中断(如break键被按下)

    SIGQU99v 3 C 键盘的退出键被按下

    SIGILL 4 C 非法指令

    SIGABRT 6 C 由abort(3)发出的退出指令

    SIGFPE 8 C 浮点异常

    SIGKILL 9 AEF Kill信号

    SIGSEGV 11 C 无效的内存引用

    SIGPIPE 13 A 管道破裂: 写一个没有读port的管道

    SIGALRM 14 A 由alarm(2)发出的信号

    SIGTERM 15 A 终止信号

    SIGUSR1 30,10,16 A 用户自己定义信号1

    SIGUSR2 31,12,17 A 用户自己定义信号2

    SIGCHLD 20,17,18 B 子进程结束信号

    SIGCONT 19,18,25 进程继续(曾被停止的进程)

    SIGSTOP 17,19,23 DEF 终止进程

    SIGTSTP 18,20,24 D 控制终端(tty)上按下停止键

    SIGTTIN 21,21,26 D 后台进程企图从控制终端读

    SIGTTOU 22,22,27 D 后台进程企图从控制终端写

以下的信号没在POSIX.1中列出,而在SUSv2列出

SIGBUS 10,7,10 C 总线错误(错误的内存訪问)

SIGPOLL A Sys V定义的Pollable事件,与SIGIO同义

SIGPROF 27,27,29 A Profiling定时器到

SIGSYS 12,-,12 C 无效的系统调用 (SVID)

SIGTRAP 5 C 跟踪/断点捕获

SIGURG 16,23,21 B Socket出现紧急条件(4.2 BSD)

SIGVTALRM 26,26,28 A 实际时间报警时钟信号(4.2 BSD)

SIGXCPU 24,24,30 C 超出设定的CPU时间限制(4.2 BSD)

SIGXFSZ 25,25,31 C 超出设定的文件限制大小(4.2 BSD)

(对于SIGSYS。SIGXCPU。SIGXFSZ。以及某些机器体系结构下的SIGBUS,Linux缺省的动作是A (terminate),SUSv2 是C (terminate and dump core))。

以下是其他的一些信号

信号 值 处理动作 发出信号的原因

SIGIOT 6 C IO捕获指令,与SIGABRT同义

SIGEMT 7,-,7

SIGSTKFLT -,16,- A 协处理器堆栈错误

SIGIO 23,29,22 A 某I/O操作如今能够进行了(4.2 BSD)

SIGCLD -,-,18 A 与SIGCHLD同义

SIGPWR 29,30,19 A 电源故障(System V)

SIGINFO 29,-,- A 与SIGPWR同义

SIGLOST -,-,- A 文件锁丢失

SIGWINCH 28,28,20 B 窗体大小改变(4.3 BSD, Sun)

SIGUNUSED -,31,- A 未使用的信号(will be SIGSYS)

C语言中的signal函数的更多相关文章

  1. c语言中的rewind函数,Win CE 不支持,可用fseek函数替换

    FILE *read = fopen(cXmlFile,"rb"); if (read) { fseek(read, 0L, SEEK_END); int len = ftell( ...

  2. c语言中的malloc函数

    少壮不努力,大一的时候c语言学得不扎实,最近学数据结构的时候看到c语言中malloc函数都不知道了,这里记录一下,避免以后再忘. malloc的全称是memory allocation,中文叫动态内存 ...

  3. golang语言中os/signal包的学习与使用

    package main; import ( "os" "os/signal" "fmt" ) //signal包中提供了两个函数 //No ...

  4. go语言中os/signal包的学习与使用

    package main; import ( "os" "os/signal" "fmt" ) //signal包中提供了两个函数 //No ...

  5. C语言中的system函数参数及其作用

    函数名: system 功   能: 发出一个DOS命令  用   法: int system(char *command);  system函数已经被收录在标准c库中,可以直接调用 system() ...

  6. c语言中的fgets函数

    fgets()函数用于从文件流中读取一行或指定个数的字符,其原型为: char * fgets(char * string, int size, FILE * stream); 参数说明:string ...

  7. linux下C语言中的flock函数用法 【转】

    表头文件  #include<sys/file.h> 定义函数  int flock(int fd,int operation); 函数说明  flock()会依参数operation所指 ...

  8. C语言中的memset函数和数组指针

    代码: #include <iostream> #include <cstring> using namespace std; int main(){ ] = {}; mems ...

  9. C语言中的system函数參数具体解释

    http://blog.csdn.net/pipisorry/article/details/33024727 函数名: system 功   能: 发出一个DOS命令   用   法: int sy ...

随机推荐

  1. 用swift开发自己的MacOS锁屏软件(3)

    前两篇中实现了MacOS端的锁屏软件,现在需要再实现一个移动端的app用来实现和mac的通信,以后的文章可能就会两个项目来回穿插了. 写完MacOS的软件又回来接着写iOS真的是享受,看着堆积如山的各 ...

  2. Android入门之文件系统操作(一)简单的文件浏览器 (转)

    Android入门之文件系统操作(一)简单的文件浏览器 (转)        import java.io.File; import java.util.*; import android.app.A ...

  3. adb devices 找不到设备怎么办 --- 2

    问题现象:在电脑上安装好手机驱动后,手机进入设置---->应用程序---->开发----->勾选USB调试后连接电脑,,在CMD命令中输入adb devices发现没有设备. 解决方 ...

  4. mtd-utils 及 ubi-utils 交叉编译

    参考: http://blog.csdn.net/zjjyliuweijie/article/details/7205374 NAND是嵌入式系统一个很重要的部件,而mtd-utilts中包含了很多针 ...

  5. Android 使用SQLite本地数据库

    参考:http://blog.csdn.net/jianghuiquan/article/details/8569252 在Android平台上,集成了一个嵌入式关系型数据库—SQLite.以SQLi ...

  6. JAVA常见算法题(十五)

    package com.xiaowu.demo; /** * * 输入三个整数x,y,z,请把这三个数由小到大输出. * * @author WQ * */ public class Demo15 { ...

  7. OpenGL变换【转】

    http://www.cnblogs.com/hefee/p/3811099.html OpenGL变换 概述 OpenGL变换矩阵 实例:GL_MODELVIEW矩阵 实例:GL_PROJECTIO ...

  8. 2017.4.18 putty和fileZilla的使用

    putty:用来连接环境. fileZila:用来传递文件. (1)连接环境 centOS 7 点击putty.exe,输入地址.用户名.密码进行连接.端口输入22.用账号和密码登录. 进入到目录下, ...

  9. 用MyEclipse2016 CI版创建一个SpringBoot程序

    之前先要在Eclipse里安装STS,步骤如下: 1.点击菜单Help->Install from Catalog 2.在弹出的对话框中点击Popular选项卡,在STS旁边点Install按钮 ...

  10. JAVA Eclipse如何开发Android的多页面程序

    Fragment可以认为是Activity的一个界面的组成部分,Fragment必须依存于Activity.   在layout文件夹中新建一个xml文件,布局方式采用RelativeLayout,注 ...