IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> Linux中的信号 SIGNAL -> 正文阅读

[系统运维]Linux中的信号 SIGNAL

推荐博客: system_call到iret过程分析 https://cloud.tencent.com/developer/article/1396091?from=article.detail.1585838

  • 进程间通信常用以下几种方式

信号

信号量

消息队列

共享内存

  • 信号量(semaphore)和信号(signal)是完全不同的东西

信号量:用来同步和互斥,PV操作,进程间通信用有名信号量,一个进程内通信用无名信号量

信号:类似于DOS下的中断,Linux中有31必须要记住的通用信号,是一种简单的进程间通信的方式

  • Linu信号

SIGHUP

SIGINT

SIGQUIT

SIGILL

SIGTRAP

SIGPIPE

SIGCHLD

SIGTTOU

  1. 什么是信号,有什么作用

是一个中断,每个信号对应各自的信号处理函数

do_signal函数是系统调用中断的执行函数,处理task_struct current中的sigaction的信号函数

signal的重要结构体 sigaction

  1. 系统调用int 80h 做了什么?
  1. 会去执行系统调用system_call函数进入内核态
  2. 识别对应的信号
  3. 调用do-signal函数,将对应的信号处理函数插入到用户的堆栈中
  4. 继续执行用户空间被插入的信号处理函数
  5. 返回原有用户程序
  1. 什么是POSIX接口协议?

全称为可移植性操作系统接口,标准的目的是定义了标准的基于UNIX操作系统的系统接口和环境,来支持源代码级的可移植性

总结:定义了一套unix操作系统环境下的函数和环境变量,实现不同os之间代码可移植,不用换函数和变量的名字

  1. 在系统收到signal后是怎么操作的?
  1. 执行system_call
  2. call sys_call_table(,%eax,4)
  3. sys_signal 做了信号的预处理与设置

中断的分类

(1)中断有两种,一种是由CPU外部硬件产生的,另一种是由CPU本身执行程序的过程中产生的;外部中断即我们所说的中断(interrupt),外部中断是异步的,由硬件产生,我们无法预测它什么时候发生;

(2)x86软件产生的中断是由“INT n”同步产生的,由程序产生,只要CPU执行了一条INT指令,就知道在开始执行下一条指令前就会进入中断服务程序,我们又称此类中断为“陷阱”;int 80为系统调用的陷阱号;

(3)异常,是被动的,如页面异常,除数为0的异常; 因此系统调用是中断中的陷阱的一种,系统调用只发生在用户空间,必然会发生用户栈和内核栈的切换。

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2021-09-08 11:09:04  更:2021-09-08 11:09:12 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/30 3:12:19-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码