Arm年度技术研讨会

管道双通信(命名管道双向通信)

本篇目录:

几种常用的进程间通信的方式,通信特点和通信方式的优缺点

1、无名管道简单方便.但局限于单向通信的工作方式.并且只能在创建它的进程及其子孙进程之间实现管道的共享:有名管道虽然可以提供给任意关系的进程使用.但是由于其长期存在于系统之中,使用不当容易出错。

2、管道pipe 管道是一种半双工的通信方式,数据只能单向流动,而且只能在具有亲缘关系的进程间使用。进程的亲缘关系通常是指父子进程关系。命名管道FIFO 有名管道也是半双工的通信方式,但是它允许无亲缘关系进程间的通信。

管道双通信(命名管道双向通信)-图1

3、#共享内存(sharedmemory):共享内存就是映射一段能被其他进程所访问的内存,这段共享内存由一个进程创建,但多个进程都可以访问。共享内存是最快的IPC方式,它是针对其他进程间通信方式运行效率低而专门设计的。

管道通信传输网的优势

1、使用灵活性命名管道具有很好的使用灵活性,表现在:1) 既可用于本地,又可用于网络。2) 可以通过它的名称而被引用。3) 支持多客户机连接。4) 支持双向通信。5) 支持异步重叠I/O操作。

2、光纤除具有以上突出的优点外,还具有耐腐蚀力强、抗核幅射、能源消耗小等优点,其缺点是质地脆、机械强度低,连接比较困难,分路、耦合不方便,弯曲半径不宜太小等。

管道双通信(命名管道双向通信)-图2

3、适应恶劣环境:无论光缆粗细,只需要光缆熔接较为良好,系统即可正常工作。温度在-40°至200°、光缆适应湿度0%-100%。

4、优点 有线传输的优点:有线传输的技术已经相当成熟,相比较无线传输来说,组建更为容易,配套设施更加完善。

5、优点:一般受干扰较小,可靠性,保密性强。缺点:建设费用大。沿途需要检查有线通信链路的维护情况,故障发生时通常很难找到故障点。用户设置通信网络后,由于系统的需求,通常会添加新设备,使用有线传输可能需要重新布线。

管道双通信(命名管道双向通信)-图3

6、相当于计数器 --》套接字 可以用于不同进程间的通信。

.为什么不适合在一个管道内实现双向通信

应该是反了吧,父进程不关闭写端、子进程不关闭读端,试一下,应该是能实现双向通信的。

所以毫无瓜葛的两个进程,一定不会访问到彼此的pipe。无法用管道进行通信。 管道一般是单工的。f[0]读,f[1]写 管道也可以适用于 兄弟进程(只要有血缘即可)。

.管道通信中,管道由OS核心的缓冲区来实现,信息传递的方向是__A___的。A. 单向 B.双向 C. 既可单向也可双向 D.不确定 8.要进行管道通信,首先建立需要通信的___D__,然后在它们之间建立一个通信管道。

管道通信的特点

管道通信传输网的优势如下:1) 既可用于本地,又可用于网络。2) 可以通过它的名称而被引用。3) 支持多客户机连接。4) 支持双向通信。5) 支持异步重叠I/O操作。

有名管道(namedpipe):有名管道也是半双工的通信方式,但是它允许无亲缘关系进程间的通信。信号量(semophore):信号量是一个计数器,可以用来控制多个进程对共享资源的访问。

其特点是没有中间环节.直接将共享的内存页面通过附接.映射到相互通信的进程各自的虚拟地址空间中.从而使多个进程可以直接访问同一个物理内存页面.如同访问自己的私有空间一样(但实质上不是私有的而是共享的)。

操作系统 何谓管道通信,有哪两种形式,各有何特点 管道通信(Communication Pipeline)即发送进程以字符流形式将大量数据送入管道,接收进程可从管道接收数据,二者利用管道进行通信。

(3)信号是一种比较复杂的通信方式,用于通知接收进程某个时间已经发生。(4)消息队列是消息的链表,存放在内核中并由消息队列标识符标识,消息队列克服了信号传递信息少,管道只能承载无格式字节流以及缓冲区大小受限等特点。

到此,以上就是小编对于命名管道双向通信的问题就介绍到这了,希望介绍的几点解答对大家有用,有任何问题和不懂的,欢迎各位老师在评论区讨论,给我留言。

分享:
扫描分享到社交APP
上一篇
下一篇