进程间通信之信号(signal)——信号的产生

本文梳理了Linux信号的基础知识,信号作为进程间通信的一种通知机制,其作用在于传递预定义的含义。文章介绍了信号的种类,如SIGHUP、SIGINT等,并讨论了信号的产生方式,包括终端按键、硬件错误、系统调用和软件条件。通过理解这些概念,有助于更好地掌握Linux系统的进程管理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

进程间通信之信号(signal)——信号的产生

Linux 信号知识点整理

前些日子编程中用到了signal,用来处理进程间的通信,一直知道有这个机制,但也没有认真花时间系统的学习,通过本次机会,总结了自己对信号的理解,希望大家可以在学习过程中起到部分参考的作用。

信号是个什么东西

当我们开始学习一个知识或者认识一个新的东西时,第一步肯定要知道这个新的知识到底是一个什么东西?同样的,信号到底是一个什么东西呢?
信号,他是一种通知机制,他起到的作用只是一个通知的作用,而该通知所要表达的意义都是我们提前知道的,你可以结合我们日常生活中常见的事情来进行对比。如造成手机闹铃把你从睡梦中叫醒,手机闹铃就是一个信号,他提醒我们该起床了。再比如说大街上随处可见的红绿灯,红灯亮起,我们停止脚步,绿灯一亮,大家顺序通过。信号也是一样的道理,他只是一种通知,产生的很突然,启动一种通知的作用。
红灯亮起,我们知道应该停止过马路;绿灯亮起时,我们立即意识到可以通过马路,每一种不同的信号都代表着不同的含义。那Linux系统中现阶段支持哪些不同种类的信号呢?我们可以在终端输入 kill -l 命令查看

  1. SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP
  2. SIGABRT 7) SIGBUS 8) SIGFPE 9) SIGKILL 10) SIGUSR1
  3. SIGSEGV 12) SIGUSR2 13) SIGPIPE 14) SIGALRM 15) SIGTERM
  4. SIGSTKFLT 17) SIGCHLD 18) SIGCONT 19) SIG
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值