为什么无名管道只能用于具有亲缘关系的进程间通信
(个人思路,错误见谅。。。)
1.无名管道是在一个进程内执行的,且它是存储在内核内存中的,不相关的进程没有其地址是无法访问到,而有亲缘关系的进程可以通过复制得到的所有资源访问到它。
2. 亲缘关系的文件描述符是相同的,比如:子进程复制父进程的,孙子复制子进程的,所以这三者的文件描述符是相同的。
3. 因为是无名管道,没有名字,不相关的进程是无法访问到它的读写端。
为什么无名管道只能用于具有亲缘关系的进程间通信相关推荐
- 为什么无名管道只能用于具有亲缘关系的进程之间通信
作业: 个人理解: 因为亲缘关系的进程之间共享文件描述符,而无名管道文件也是一个文件,可以通过文件描述符进行通信. 而非亲缘关系的进程之间不共享文件描述符,所以不能使用无名管道进行通信.
- 2022.8.31 进程中无名管道的特点,无名管道的创建,为何无名管道只能能够实现具有亲缘关系的进程间的通信,以及实现利用无名管道父进程给子进程发送消息的完整代码。
无名管道通信 无名管道特点: (1):只能用于具有亲缘关系的进程之间的通信.(父子进程或兄弟进程) (2):是一个半双工的通信模式,具有固定的读端和写端.(fd[0]固定为读端,fd[1]固定为写端) ...
- 进程间通信方式(一)-- 无名管道、有名管道
文章目录 1. 进程间通信方式分类 2. 进程间通信实现方式 3. 无名管道 3.1 概念 3.2 相关函数 读写规律 3.3 无名管道实现进程间通信 4. 有名管道 4.1 概念 4.2 创建有名管 ...
- 进程间通信————无名管道
无名管道 只能用于具有亲缘关系的进程之间的通信 单工的通信模式 具有固定的读端和写端 无名管道创建时会返回两个文件描述符 分别用于读写管道 只能用于亲属关系之间 创建无名管道 #inc ...
- linux进程间通讯-无名管道
文章目录 无名管道 无名管道的创建 -- pipe函数 无名管道的读写规律 无名管道 无名管道概述 管道(pipe)又称无名管道. 无名管道是一种特殊类型的文件,在应用层体现为两个打开的文件描述符.任 ...
- linux进程间通信(IPC) ---无名管道
管道概述 管道(pipe)又称无名管道 无名管道是一种特殊类型的文件,在应用层体现为两个打开的文件描述符 任何一个进程在创建的时候,系统都会,给它分配4G的虚拟内存,分为3G的用户空间和1G的内核空间 ...
- 17、有名管道与无名管道之间的区别
1)无名管道:管道是半双工的,数据只能向一个方向流动:需要双方通信时,需要建立起两个管道:只能用于父子进程或者兄弟进程之间(具有亲缘关系的进程). 单独构成一种独立的文件系统:管道对于管道两端的进程而 ...
- 有名管道和无名管道的区别
1)无名管道:管道是半双工的,数据只能向一个方向流动:需要双方通信时,需要建立起两个管道:只能用于父子进程或者兄弟进程之间(具有亲缘关系的进程). 单独构成一种独立的文件系统:管道对于管道两端的进程而 ...
- 进程间的通信——无名管道
进程间的通信--无名管道 宗旨:技术的学习是有限的,分享的精神是无限的. 一.进程间的通信 (1)同主机进程间数据交互机制:无名管道(PIPE),有名管道(FIFO).消息队列和共享内存.无名管道多用 ...
最新文章
- Python 中常见的配置文件写法
- 十一课堂|通过小游戏学习Ethereum DApps编程(3)
- .NET开发辅助工具-ANTS Performance Profiler【转载】
- pycharm设置控制台的解释器_PyCharm 中文教程 01:运行 Python 的四种方式
- SDN学习之旅-RYU笔记(1)
- boost::hana::length用法的测试程序
- 玩转短视频?守护视频安全?AI智能提速?一分钱体验? 阿里云视频点播大招盘点...
- c++指定枚举占一个字节
- js获取页面宽度给JS div设宽度
- C++函数和类的封装
- 国内首款 FPGA 云服务器,性能是通用 CPU 服务器 30 倍以上
- Thinking in Java 10.8.1 闭包与回调
- Android 进阶 教你打造 Android 中的 IOC 框架 【ViewInject】 (上)
- WIN7英文操作系统,中文语言包安装。及部分开发环境,软件中文乱码问题解决。
- SLAM之PTAM学习笔记
- JEECMS V8.1常用标签举例
- 这个时代,“寒门再难处贵子”【转载】
- 一键接入 ChatGPT,让你的QQ群变得热闹起来
- uniapp MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 upgrade listeners
- C语言:由大到小排序