Linux匿名管道和命名管道以及共享内存

1、本质:

匿名管道本质上是内核中的一块管冲区,而命名管道本质上是一块标识符,用于让多个进程能够访问同一个缓冲区

2、对象:

匿名管道可以只能用于有亲缘关系的进程之间的通信,而命名管道可以用于任意进程之间的通信

3、管道是半双工通信,是可选择方向的单向通信

4、命名管道是当被以读的方式打开时,会发生阻塞,只有在被当以读的方式再打开时,才会正常运行,反之亦然

5、前面已经说过,命名管道的本质是一块文件标识符,用于让多个进程能够找到同一块缓冲区进行通信,所以删除命名管道并不能影响已经打开这个缓冲区的进程的 读写操作

6、共享内存是让不同进程的地址空间映射到同一块物理内存,从而实现进程间通信,删除共享内存,只是让这块共享内存拒绝后续映射,但只有其引用计数变为零即没有进程的地址空间再映射这块物理空间时,这块共享内存才会真正被删除

相关推荐
MMME~9 小时前
Ansible模块速查指南:高效定位与实战技巧
大数据·运维·数据库
zhengfei6119 小时前
AutoPentestX – Linux 自动化渗透测试和漏洞报告工具
linux·运维·自动化
我材不敲代码9 小时前
在Linux系统上安装MySQL
linux·运维·服务器
wWYy.9 小时前
C++-集群聊天室(2):muduo网络库
网络·c++
obboda9 小时前
CICD 部署与使用
运维
yuezhilangniao9 小时前
阿里云服务器Alibaba Cloud Linux 3 安装Python3.11简明指南
linux·运维·python3.11
珠海西格9 小时前
远动通信装置为何是电网安全运行的“神经中枢”?
大数据·服务器·网络·数据库·分布式·安全·区块链
程序 代码狂人9 小时前
CentOS7初始化配置操作
linux·运维·开发语言·php
lcx_defender9 小时前
【Docker】Docker部署运行nacos
运维·docker·容器
java干货9 小时前
微服务:把一个简单的问题,拆成 100 个网络问题
网络·微服务·架构