Linux -- 信号

信号(Signal)

1. 信号基本概念

  • 信号是软件中断,用于内核 / 进程通知某进程发生事件。

  • 进程对信号的三种处理方式:

    1. 默认动作(终止、暂停、忽略等)

    2. 忽略(SIGKILL、SIGSTOP 不可忽略)

    3. 自定义捕捉(注册信号处理函数)

2. 常用信号

信号名 编号 说明 备注
SIGINT 2 终端中断 Ctrl+C 常用
SIGQUIT 3 终端退出 Ctrl+\ 产生 core
SIGKILL 9 强制杀死进程 不可捕捉、不可忽略
SIGALRM 14 闹钟超时
SIGUSR1 10 用户自定义信号

3. 信号相关函数

  1. signal (信号,处理方式)

    • SIG_IGN:忽略信号

    • SIG_DFL:恢复默认处理

    • 自定义函数:捕获信号

  2. kill (pid, 信号)

    • 向指定进程发送信号
  3. atoi()

    • 字符串转整数(命令行传信号 / 进程号)

4. 信号关键特性

  • SIGKILL (9)、SIGSTOP (19) 不能被捕获、忽略、阻塞

  • 信号处理函数执行期间,同种信号会被暂时阻塞

  • 信号是异步的:什么时候来不确定

相关推荐
YXXY3136 小时前
线程的介绍(四)
linux
李白你好6 小时前
AI Agent 架构的自动化渗透测试工具
运维·人工智能·自动化
Snasph7 小时前
GNU Make 用户手册(中文版)
服务器·算法·gnu
广州灵眸科技有限公司7 小时前
瑞芯微RV1126B开发板(EASY-EAI-PI2) Easy-Eai编译环境准备与更新
服务器·前端·人工智能·python·深度学习
一勺菠萝丶7 小时前
Docker Desktop 启动后容器自动启动怎么办?如何关闭容器自启动
运维·docker·容器
Esaka_Forever7 小时前
uv init 完整用法(Python 最快包管理器)
服务器·python·uv
溜达的大象8 小时前
服务器挂了等用户报障?我用Prometheus搭了一套监控告警,服务器出状况第一时间通知我
服务器·php·prometheus
ylscode8 小时前
Comodo防火墙曝致命零日漏洞:单个IPv6数据包即可触发Windows蓝屏死机
运维·网络·windows·安全·安全威胁分析
kTR2hD1qb8 小时前
从 Responses API 到 Chat Completions:一个模型网关的设计复盘
linux·前端
实在智能RPA8 小时前
药企GMP合规自动化破局:实在Agent的功能完整度评估与落地实践
运维·人工智能·ai·自动化