## 命名管道双向通讯linux

命名管道双向通讯linux

命名管道克服了匿名管道的局限性
1)命名管道是在文件系统中作为一个特殊的设备文件而存在的。
2)不同祖先的进程之间可以通过管道共享数据。
3)当共享管道的进程执行完所有的I/O操作以后,命名管道将继续保存在文件系统中以便以后使用。
4)管道只能由相关进程使用,它们共同的祖先进程创建了管道。但是,通过FIFO,不相关的进程也能交换数据。

命名管道用于不相关两个进程进行通讯

1.process2.c
在这里插入图片描述判断是否打开管道失败后,进入while循环,写入要打印的内容,并写入管道fd1。再从fd2管道读出内容(另一个进程发送的内容),并打印。在这里插入图片描述
2.process1.c
在这里插入图片描述
以”只读“打开path1,以”只写”打开path2。在这里插入图片描述
判断是否打开管道失败后,进入while循环,从fd1管道读出内容(另一个进程发送的内容),并打印。写入要打印的内容,并写入管道fd2。

3. 通过gcc编译,链接,执行两个.c文件
在这里插入图片描述
4.执行效果
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值