美文网首页网络通讯编程
3.3、信号的概念、认识、处理动作

3.3、信号的概念、认识、处理动作

作者: 奥斯特洛司机 | 来源:发表于2019-03-31 21:48 被阅读0次

1、信号的基本概念
进程之间的常用通信手段:发送信号 kill
信号:通知,用来通知某个进程发生了某一个事情;
信号都是突发事件,信号是异步发生的,信号也被称为“软件中断”;
信号如何产生:a、某个进程或者发送给另外一个进程或者自己
b、有内核发送给某个进程
在键盘上输入Ctrl+C,kill命令;内存访问异常:除数为0,越界
热升级,新启动新的master进程。给老的master进程发送信号
信号的名字:都是以SIG开头,SIGHUP终端断开信号。都是一些正整数常量,宏
在signal.h里面 usr/include
sudo find / -name "signal.h" | xargs grep -in "SIGHUP"
-I 忽略大小写 -n 显示出行号 xargs:用来给其他命令传递参数
从根目录开始搜索所有的signal.h的文件,再xargs传递给grep 内容搜索SIGHUP文本
结果看到信号是宏定义。
2、通过kill命令认识一些信号
kill:发个信号给进程:能给进程发送多种信号。
ps -eo pid,ppid,sid,tty,pgrp,comm | grep -E 'bash|PID|nginx'
通过strace工具观察kill pid发送了一个SIGTERM【终止】信号
kill -1 pid 发送了SIGHUP信号 ,以此类推。
kill -2 pid 发送了SIGINT信号,默认动作是杀死进程
3、进程的状态
ps -eo pid,ppid,sid,tty,pgrp,comm,stat | grep -E 'bash|PID|nginx'
ps aux | grep -E 'bash|PID|nginx'
S+:休眠+前台运行
T :停止或被追踪
贴图:


3.3、信号的概念、认识、处理动作

4、常用的信号列举
贴图:


3.3、信号的概念、认识、处理动作
 SIGKILL,SIGSTOP不能被进程忽略,也不能被捕捉。

5、信号处理的相关动作
当某个信号出现时,我们可以按三种方式之一进行处理,
我们称之为信号处理相关动作。
5.1、执行系统默认动作,绝大部分是杀死进程
5.2、忽略 signal(SIGINT, SIGIGN)
5.3、捕捉该信号,写一个信号处理函数处理该信号。特权信号也不能被捕捉。

相关文章

  • 3.3、信号的概念、认识、处理动作

    1、信号的基本概念进程之间的常用通信手段:发送信号 kill信号:通知,用来通知某个进程发生了某一个事情;信号都是...

  • 雷达信号处理基础-距离分辨率

    雷达信号处理中涉及着许多的概念和相关运算,这些概念的认知对于信号处理的理解具有重要的作用,做到知其为何物,避免留下...

  • linux 信号机制

    1. Linux支持的信号列表如下。很多信号是与机器的体系结构相关的 信号值 默认处理动作 发出信号的原因 SIG...

  • Linux进程间通信- signal信号的捕捉与sigactio

    Linux进程间通信- signal信号的捕捉与sigaction函数 前面有提到Linux中信号的处理动作是用户...

  • Linux进程间通信--signal的阻塞与未决(三)

    Linux进程间通信--signal的阻塞与未决 实际执行信号的处理动作(handler)称为信号递达(deliv...

  • APUE信号

    第10章 信号 信号是软件中断 信号提供了一种处理异步事件的方法 10.2 信号概念 信号都以SIG开头 信号名都...

  • 信号

    一个典型的信号处理与响应 摘要 1.信号基本概念2.信号产生的一般方式3.信号递达盒阻塞的概念和原理4.信号捕捉方...

  • 信号#1

    信号的概念 取决于进程的要求,内核对Signal信号有如下三种行为: 忽略信号 抓住这个信号并且对这个信号进行处理...

  • 动作思维🏊特点模式

    依据思维所操作的对象是自身的动作还是处理概念和信息,可分为动作思维和概念思维方式。 什么是动作思维 动作思维是伴随...

  • signal

    信号: 信号是组概念,发送方和接收方需要配对存在,比如进程A发送信号X给进程B,进程B接收信号按信号处理函数进行响...

网友评论

    本文标题:3.3、信号的概念、认识、处理动作

    本文链接:https://www.haomeiwen.com/subject/fecpbqtx.html