信号

1 信号简介

信号的基本概念: 软件模拟中断,进程接受信号后做出相应响应

怎么产生信号?

  • 硬件
    • 执行非法指令
    • 访问非法内存
    • 驱动程序
  • 软件
    • 控制台:
      • ctrl+c:中断信号
      • ctrl+|:退出信号
      • ctrl+z:停止信号
    • kill命令
    • 程序调用kill()函数

信号的处理方式:

  • 忽略:进程当信号从来没有发生过
  • 捕获:进程会调用相应的处理函数,进行相应的处理
  • 默认:使用系统默认处理方式来处理信号

2 常用信号

信号名信号编号产生原因默认处理方式
SIGHUP1关闭终端终止
SIGINT2ctrl+c终止
SIGQUIT3ctrl+\终止+转储
SIGABRT6abort()终止+转储
SIGPE8算术错误终止
SIGKILL9kill -9 pid终止,不可捕获/忽略
SIGUSR110自定义忽略
SIGSEGV11段错误终止+转储
SIGUSR212自定义忽略
SIGALRM14alarm()终止
SIGTERM15kill pid终止
SIGCHLD17(子)状态变化忽略
SIGSTOP19ctrl+z暂停,不可捕获/忽略

参考资料:

  1. [野火]i.MX Linux开发实战指南
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值