【Linux 进程间通信】管道

news2024/11/20 20:31:12

文章目录

      • 1.为什么操作系统需要向用户提供进程间通信方式?
      • 2.进程间通信的种类
      • 3.管道
        • 3.1管道的作用
        • 3.2管道的本质
        • 3.3管道的通信原理
        • 3.4管道的分类

1.为什么操作系统需要向用户提供进程间通信方式?

①🍎资源共享:有的时候两个进程需要访问同一块资源;
②🍎协同作用:某个进程可能需要控制另外一个进程一起运行;
③🍎并发运行:进程的并发控制肯定是需要多个进程之间通信来完成的;

2.进程间通信的种类

①管道:🐧 Linux 下一切皆文件,所以我们也要把管道按文件来理解,管道实际上是内存中的一块共享区域

②共享内存:🐧
③消息队列:🐧
④信号量:🐧

在这里插入图片描述

3.管道

3.1管道的作用

用于进程间的数据传输

3.2管道的本质

内核中的一块缓冲区

3.3管道的通信原理

两个进程访问内核中的同一块缓冲区

3.4管道的分类
  • 匿名管道
  • ①缓冲区没有标识符;
    ②只能由血缘关系的两个进程进行通信(父和子进行通信,或者爷孙之间进行通信);

  • 命名管道
  • ①缓冲区有标识符;
    ②没有亲缘关系的两个进程也可以进行通信;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1628922.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

QT——简易计算器(从0开始)

目录 一、题目描述: 二、创建工程: 1. ​编辑 2. 3. 4. 默认 5. 6. 7. 8. 默认 9. 创建完成 三、UI界面设计: 1. 添加按钮 1. 2. 按钮界面 3. 按钮绑定快捷键 2. 文本框添加 1. 文本框字体 2. 默认文本 3. 文本对齐方式…

英智数字孪生机器人解决方案,赋能仓库物流模式全面升级

工业机械臂、仓储机器人、物流机器人等模式的机器人系统在现代产业中扮演着愈发重要的角色,他们的发展推动了自动化和智能化水平的提高,有助于为制造业、物流业、医疗保健业和服务业等行业创造新效率并提升人们的生活质量。 行业面临的挑战 机器人开发、…

为何要与云产商进行云端防护合作,上云企业如何保障云端安全

随着大数据、云计算等信息技术的迅猛发展,企业为了降低成本、提高效率,纷纷将业务迁移至云端。 随着大数据、云计算等信息技术的迅猛发展,企业为了降低成本、提高效率,纷纷将业务迁移至云端。这一全面的上云浪潮对传统的安全企业格…

YOLOv8+PyQt5野外火焰检测系统(可以从图像、视频和摄像头三种路径检测)

1.效果视频:https://www.bilibili.com/video/BV1Tm421s7te/?spm_id_from333.999.0.0 2.资源包含可视化的野外火焰检测系统,可用于火灾预警或火灾救援,该系统可自动检测和识别图片或视频当中出现的火焰,以及自动开启摄像头&#…

使用Windows GDI进行绘图

使用Windows GDI绘图,可以使用MFC,也可以直接使用Windows API绘图,两者其实都一样。MFC也是封装了Windows API。 下面以MFC为例,进行说明。因为MFC帮我们做好了一些底层,可以直接使用Windows GDI的函数。 在MFC中使用…

如此建立网络根文件系统 Mount NFS RootFS

安静NFS系统服务 sudo apt-get install nfs-kernel-server 创建目录 sudo mkdir /rootfsLee 将buildroot编译的根文件系统解压缩到 sudo tar xvf rootfs.tar -C /rootfsLee/ 添加文件NFS访问路径 sudo vi /etc/exports sudo /etc/exports文件,添加如下一行 …

SecureCRT中添加命令显示为空如何处理?(原因添加了空行)

相关背景信息 配置相关路径:~/Library/Application\ Support/VanDyke/SecureCRT/Config包括的配置信息 按钮、命令、全局配置、色彩、以及license都在$ ls ButtonBarV4.ini Commands Global.ini SSH2.ini Button…

STM32单片机通过ST-Link 烧录和调试

系列文章目录 STM32单片机系列专栏 C语言术语和结构总结专栏 文章目录 1. ST-LINK V2 2. 操作步骤 2.1 连接方式 2.2 驱动安装常规步骤 2.3 Keil中的设置 3. 调式仿真 4. 常见问题排查 1. ST-LINK V2 ST LINK v2下载器用于STM32单片机,可以下载程序、调试…

代码随想录第49天|121. 买卖股票的最佳时机 122.买卖股票的最佳时机II

121. 买卖股票的最佳时机 121. 买卖股票的最佳时机 - 力扣(LeetCode) 代码随想录 (programmercarl.com) 动态规划之 LeetCode:121.买卖股票的最佳时机1_哔哩哔哩_bilibili 给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一…

为什么常用氢化物

知识星球(星球名:芯片制造与封测社区)里的学员问:diffusion工序,所需要的气体种类有哪些? Diffusion是什么工序? "Diffusion"工序是通过热能将掺杂剂原子扩散到硅片中,以形…

AD高速板设计--RJ45(笔记)

瑞芯微VS全志科技(处理器芯片王者) - 知乎 (zhihu.com) RTL8211E应用(二)之信号输入、输出接口_rtl8211eg中文资料-CSDN博客 Raspberry Pi 硬件 - Raspberry Pi 文档 RJ45接口的PCB设计布局布线注意事项 - 知乎 (zhihu.com) 以…

CTF之eval

首先我们先了解一下eval()函数 什么是eval()? eval() 函数把字符串按照 PHP 代码来计算。 该字符串必须是合法的 PHP 代码,且必须以分号结尾。 如果没有在代码字符串中调用 return 语句,则返回 NULL。如果代码中存在解析错误…

OpenCV直方图计算

返回:OpenCV系列文章目录(持续更新中......) 上一篇:OpenCV实现直方图均衡 下一篇 :OpenCV系列文章目录(持续更新中......) 在本教程中,您将学习如何: 使用 OpenCV 函数 cv::split 将图像划分…

Kubernetes中文件挂载的四种方式

一. Kubernetes入门 1.1 Kubernetes创建POD过程 1.2. Kubernetes基本操作 命令说明用法create创建kubectl create -f xx.yamledit编辑kubectl edit svc [POD的service名称]get获取kubectl get pod --namespaceXXXpatch更新kubectl patch -f xx.yamldelete删除kubectl delete …

[SWPUCTF-2022-新生赛]ez_sql

title:[SWPUCTF 2022 新生赛]ez_sql 审题 根据提示,POST传参 得到假的flag 判断类型 字符型注入 判断列数 发现空格和’or’被过滤 重新构造 nss-1/**/oorrder/**/by/**/4#发现为3个字段 采用联合注入union 爆库 发现union被过滤,双写union绕过 发…

sheng的学习笔记-AI-支持向量机(SVM)

目录:sheng的学习笔记-AI目录-CSDN博客 目录 什么是向量机 SVM算法原理 SVM基本模型 SVM对偶问题 什么是对偶问题: 为什么使用对偶问题 拉格朗日定理 拉格朗日乘子法 对偶问题算法 非线性SVM算法原理 核函数 常用核函数 软间隔与正则化 软…

PMBOK® 第六版 项目是什么

目录 读后感—PMBOK第六版 目录 项目定义 定义:项目是为创造独特的产品、服务或成果而进行的临时性工作。 项目的特征具备以下三点: 独特性:独一无二,无法简单重复过去的做法。 临时性:项目有明确的起点和终点&…

腾讯云邮件推送如何设置?群发邮件的技巧?

腾讯云邮件推送功能有哪些?怎么有效使用邮件推送? 腾讯云邮件推送以其稳定、高效的特点,受到了众多企业的青睐。那么,腾讯云邮件推送如何设置呢?又有哪些群发邮件的技巧呢?下面AokSend就来详细探讨一下。 …

AI预测体彩排列3第2套算法实战化测试第5弹2024年4月27日第5次测试

今天继续进行新算法的测试,今天是第5次测试。好了,废话不多说了,直接上图上结果。 2024年4月27日体彩排3预测结果 6码定位方案如下: 百位:6、2、1、7、8、9 十位:8、9、4、3、1、0 个位:3、7、8…

Python 数组控件的使用

当一个UI窗口界面内有多个相同类型的控件,且这多个控件的功能都类似时,使用数组控件是一个非常不错的选择,可以大大减少代码的编写 且 代码易读性强,可惜的是Python好象是没有数组控件这个东东。 我们来看看以下一个界面&#xff…