zoukankan      html  css  js  c++  java
  • C语言中的signal函数

    • 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)

  • 相关阅读:
    【BZOJ-3712】Fiolki LCA + 倍增 (idea题)
    【BZOJ-1941】Hide and Seek KD-Tree
    【BZOJ-2400】Spoj839Optimal Marks 最小割 + DFS
    【BZOJ-3709】Bohater 贪心
    【BZOJ-2342】双倍回文 Manacher + 并查集
    【BZOJ-3790】神奇项链 Manacher + 树状数组(奇葩) + DP
    【BZOJ-4568】幸运数字 树链剖分 + 线性基合并
    【BZOJ-4520】K远点对 KD-Tree + 堆
    【BZOJ-4127】Abs 树链剖分 + 线段树 (有趣的姿势)
    【BZOJ-2648&2716】SJY摆棋子&天使玩偶 KD Tree
  • 原文地址:https://www.cnblogs.com/jhcelue/p/7256859.html
Copyright © 2011-2022 走看看