linux 络编程———信 大讲堂

1. 信 简介     

    linux系统中无时无该产生着信 .信 在linux上又称软件中断,用来通知进程发生了异步事件。在软件层次上是对中断机制的一种模拟,在原理上,一个进程收到一个信 与处理器收到一个中断请求可以说是一样的。信 是进程间通信机制中唯一的异步通信机制一个进程不必通过任何操作来等待信 的到达,事实上,进程也不知道信 到底什么时候到达。进程之间可以互相通过系统调用kill发送软中断信 。内核也可以因为内部事件而给进程发送信 ,通知进程发生了某个事件。信 机制除了基本通知功能外,还可以传递附加信息。

2. 信 的四要素

    • 编 :每种信 在linux系统中都有唯一的编 .可在命令下通过kill -l查看所有信

    • 信 名:每种信 在linux系统中都有唯一的信 名,可在命令下通过kill -l查看所有信

    • 事件:需要满足特定事件才发送

    • 默认处理动作:每种信 都有默认处理行为(下面会详细说明)

3. 信 的共用性:

    • 简单:信 是linux IPC进程间通信中开销最小的机制

    • 不能携带大量数据

    • 需要满足特定事件才发送

4. 信 的机制

    • 每个进程收到的所有信 ,都是由内核kernel负责发送,并由内核在内核处理执行

5. 产生信 的分类

    • 键盘:

      • Ctrl+c —>  2  SIGINT 

      • Ctrl+z —>  19 SIGSTOP

      • Ctrl+ —>  3  SIGQUIT

    • 系统调用

      • 程序上,kill sigqueue

    • 软件条件满足

      • alarm  setitimer 定时器

    • 硬件错误(程序错误)

      • 非法访问内存: 段错误 —-> 11   SIGSEGV

      • 除0: 浮点数例外        —-> 8    SIGFPE

      • 内存对齐出错:总线错误 —->

    • 命令发出

      • kill

6. 信 的处理方式

    • 执行默认动作

      • term  终止进程

      • lgn   忽略信

      • core  终止进程,并产生core文件,供调试使用

      • stop  停止(暂停)进程

      • cont  继续运行进程  

    • 执行忽略处理

    • 捕捉: 执行用户注册时的回调函数

  • ***注意:SIGKILL 和 SIGSTOP信 处理方式只能是执行默认动作,不能够忽略和捕捉.

文章知识点与官方知识档案匹配,可进一步学习相关知识CS入门技能树Linux入门初识Linux25145 人正在系统学习中 相关资源:百度图片疯狂下载器-专业指导文档类资源-CSDN文库

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2016年5月6日
下一篇 2016年5月7日

相关推荐