首页 > 系统相关 >linux下进程通信总结

linux下进程通信总结

时间:2023-02-23 21:34:21浏览次数:38  
标签:总结 调用 信号处理器 通信 阻塞 递送 信号 linux 进程

信号:

信号是通知发生了某种事件的机制,内核和进程都可能会向进程发送各种信
号,进程也可以向自己发送信号。系统定义了一组标准信号类型,每种信号都拥
有唯一的数值和用途。
典型的信号递送是异步的,意味着进程可能会在任何时候被信号中断。在某
些情况下(如硬件产生的信号),信号也可能会被同步递送,意味着信号递送是
可预测的,并且可以在程序执行期间特定时间点重新产生。
信号的默认动作可能是忽略、终止进程(生成或不生成 core dump 文件)、
停止进程执行、继续执行已停止的进程。不同信号类型的默认动作是不一样的。
此外程序可以使用 signal()或 sigaction()显式地忽略一个信号,或者建立程序员自
定义的信号处理器。由于可移植性等原因,我们最好使用 sigaction()来建立信号
处理器。
进程(拥有适当的权限)可以使用 kill()向其它进程发送信号。发送 null 信号
(0)可以检测特定进程 ID 是否正被系统使用。
每个进程都拥有一个信号掩码,也就是当前阻塞递送的信号集。我们可以使
用 sigprocmask()向信号掩码中添加或删除信号。
如果一个信号在被阻塞时接收到,会保持未决直到该信号被解除阻塞。标准
信号不会被排队,也就是说一个信号只会被标记为未决一次,稍后也只会被递送

一次。进程可以使用 sigpending()系统调用来获取当前未决的信号集。

sigaction()系统调用在设置信号部署(当有信号来时,被调用的函数)时,能够提供比 signal()更多的控制选项

和灵活性。首先我们可以指定一组额外的信号,在信号处理器被调用时进行阻塞。
此外还可以使用许多标志来控制信号处理器被调用时的各种动作。例如有些标志
可以选择使用老式的不可靠信号语义(不阻塞导致信号处理器调用的当前信号,
以及调用信号处理器之前重置信号的部署为默认动作)。
使用 pause()可以暂停进程的执行,直到某个信号到达。

 

标签:总结,调用,信号处理器,通信,阻塞,递送,信号,linux,进程
From: https://www.cnblogs.com/woodx/p/17149511.html

相关文章

  • 2.23今日总结
     今天在几个室友的帮助下我的AndroidStudio终于能够运行了,在昨天的基础上学习了Android的应用程序组件,Activities:描述UI,并且处理用户与机器屏幕的交互。Services:处理与......
  • 2.23学习总结
    今天学习了“改”内容:update.1.jsp<%@pageimport="dailysummer.Main"%><%@pagelanguage="java"contentType="text/html;charset=UTF-8"pageEncoding="UTF-8"......
  • 2-23总结
     这是今天在blibli上一起学习的一个代码但是发生了很奇怪的问题在博主的编译环境中并没有错误但是我这里经过运行之后发生了以下情况目前没找到解决方法,今天完全的......
  • Linux中的错误码
    include\uapi\asm-generic\errno-base.h#define EPERM 1 /*Operationnotpermitted*/#define ENOENT 2 /*Nosuchfileordirectory*/#define ESRCH 3 /*N......
  • 每日总结2023/2/23
    今天继续进行安卓的学习  用户名文本框  <?xmlversion="1.0"encoding="utf-8"?><LinearLayoutandroid:layout_width="match_parent"android:layout_h......
  • 如何将Linux的NIC 名称更改为 eth0 而不是 enps33 或 enp0s25,只要几秒钟
    概述我们使用Linux系统,网卡名称通常都是eth0,但是有一些新的linux发行版,网卡名字enps33或enp0s25。peng@ubuntu:~$ifconfigens33Linkencap:EthernetHWaddr......
  • Linux学习之前的基础准备(基础)
    Xwindiws和命令行之间进行切换图形环境:即命令行界面加上XWindows,命令行界面一直存在的,图解界面取决于使用者是否想要切换方式:ctrl+alt+f2~f6:命令行模式登录tty2~tty6,原来......
  • Linux文件权限和目录配置
    Linux最大特点与windows不同windows是单用户多任务,而linux使用多用户多任务,所以在使用过程中也严格划分每一个用户,以便于进行更好的管理,同时他也是一个安全防护机制文件拥有......
  • 今日总结-
    <!DOCTYPEhtml><html><head><metacharset="utf-8"><title>html快速入门</title></head><body><fontcolor="red">乾坤未定,你我皆是黑......
  • 2023.2.23模拟赛总结
    输出的freopen一定要写在printf前面!!7:35开题上去先看第一道很快写出一个30pts的暴力(结果忘了$10^9*10^9$会炸int结果当场挂大分)看到\(10^6\)的数据范围自......