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

1、本质:

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

2、对象:

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

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

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

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

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

相关推荐
Harvy_没救了13 分钟前
【网络部署】 Win11 + VMware CentOS8 + Nginx 文件共享服务 Wiki
运维·网络·nginx
春风有信23 分钟前
【2026.05.01】Windows10安装Docker Desktop 4.71.0.0步骤及问题解决
运维·docker·容器
嵌入式×边缘AI:打怪升级日志34 分钟前
100ASK-T113 Pro 开发板 Bootloader 完全开发指南
linux·ubuntu·bootloader
汤愈韬43 分钟前
NAT Server 与目的Nat
网络·网络协议·网络安全·security
2401_873479401 小时前
断网时如何实时判断IP归属?嵌入本地离线库,保障风控不中断
运维·服务器·网络
守城小轩1 小时前
基于Chrome140的Yahoo自动化(关键词浏览)——需求分析&环境搭建(一)
运维·自动化·chrome devtools·浏览器自动化·指纹浏览器·浏览器开发
charlie1145141912 小时前
Linux 字符设备驱动:cdev、设备号与设备模型
linux·开发语言·驱动开发·c
handler012 小时前
Linux 内核剖析:进程优先级、上下文切换与 O(1) 调度算法
linux·运维·c语言·开发语言·c++·笔记·算法
zhouwy1132 小时前
Linux进程与线程编程详解
linux·c++
7ACE2 小时前
Wireshark TS | TLP 超时时间
网络·网络协议·tcp/ip·wireshark·tcpdump