管道(pipe):最基本的IPC机制,单向通信管道是Linux中很重要的一种通信方式,是把一个程序的输出直接连接到另一个程序的输入,常说的管道多是指无名管道,无名管道只能用于具有亲缘关系的进程之间,这是它与有名管道的最大区别。1、分类:(1)、管道(无名管道):pipe管道是用环..
分类:
系统相关 时间:
2016-04-13 00:40:59
阅读次数:
191
效率不太高啊,记录一下下面这两个比较坑的地方: 1. 管道实际存储在内存中,不管是有名管道还是无名管道,都放在内核的缓冲区中。 管道有下面两个限制: 1)管道容量有限制,并且不能更改,所以需要大规模数据通信是不适合使用管道的,在linux下这个限制为64K,65535个字节。 2) 管道有一个缓冲区 ...
分类:
其他好文 时间:
2016-04-07 23:25:39
阅读次数:
217
命名管道的概述 无名管道,因为没有名字,仅仅能用于亲缘关系的进程间通信(很多其它详情。请看《无名管道》)。为了克服这个缺点。提出了命名管道(FIFO)。也叫有名管道、FIFO 文件。 命名管道(FIFO)不同于无名管道之处在于它提供了一个路径名与之关联,以 FIFO 的文件形式存在于文件系统中,这样 ...
分类:
系统相关 时间:
2016-04-02 10:43:14
阅读次数:
251
在本系列序中作者概述了 linux 进程间通信的几种主要手段。其中管道和有名管道是最早的进程间通信机制之一,管道可用于具有亲缘关系进程间的通信,有名管道克服了管道没有名字的限制,因此,除具有管道所具有的功能外,它还允许无亲缘关系进程间的通信。 认清管道和有名管道的读写规则是在程序中应用它们的关键,本文在详细讨论了管道和有名管道的通信机制的基础上,用实例对其读写规则进行了程序验证,这样做有利于增强读...
分类:
系统相关 时间:
2016-04-01 18:29:50
阅读次数:
298
一、进程间的通信方式 1 管道( pipe ):管道是一种半双工的通信方式,数据只能单向流动,而且只能在具有亲缘关系的进程间使用。进程的亲缘关系通常是指父子进程关系。2 有名管道 (namedpipe) : 有名管道也是半双工的通信方式,但是它允许无亲缘关系进程间的通信。3 信号量(semophor ...
分类:
编程语言 时间:
2016-03-28 10:35:55
阅读次数:
237
原帖发表在IBM的developerworks网站上,是一个系列的文章,作者郑彦兴,通过讲解和例子演示了Linux中几种IPC的使用方式,我觉得很好,在这里做一个保留,能看完的话Linux IPC的基础是没有问题的了。一)Linux环境进程间通信(一)管道及有名管道http://www.ibm.co
分类:
系统相关 时间:
2016-03-18 20:11:53
阅读次数:
295
有名管道 有名管道又称为FIFO文件,因此我们对有名管道的操作可以采用文件操作的方法,如使用open,read,write等。 FIFO文件的特点 1.读取FIFO文件的进程只能以RDONLY方式打开FIFO文件。 2.写入FIFO文件的进程只能以WRONLY方式打开FIFO文件。 3.FIFO文件
分类:
其他好文 时间:
2016-02-28 10:59:35
阅读次数:
152
binder的介绍:由于不同的进程不可以直接互相访问,所以需要一些机制来确保进程间能够通信,在linxu中,有以下几种:
1.管道(Pipe)及有名管道(named pipe):管道可用于具有亲缘关系进程间的通信,有名管道克服了管道没有名字的限制,因此,除具有管道所具有的功能外,它还允许无亲缘关系进程间的通信。
2.信号(Signal):信号是比较复杂的通信方式,用于通知接受进程有某种事件发生,...
分类:
其他好文 时间:
2016-02-26 12:26:43
阅读次数:
388
14.有名管道通信 有名管道: 有名管道又称为FIFO文件,因此我们对有名管道的操作可以采用操作文件的方法,如使用 open,read,write等. 有名管道的学习: 有名管道与其他文件的对比: FIFO文件在使用上和普通文件有相似之处,但是也有不同之处: 1. 读取Fifo文件的进程只能以"RD...
分类:
其他好文 时间:
2016-02-14 09:07:21
阅读次数:
263
上一篇文章中学习了进程间通信的一种简答的方法:匿名管道。但是它只能用于具有亲缘关系的进程之间的通信。而FIFO的通信机制与之相似,却可以在任意两个进程之间通信。FIFO文件操作创建FIFO类似于创建文件,确实,FIFO可以存在于文件系统中。下面是创建FIFO的函数:#include int mkfi...
分类:
系统相关 时间:
2015-12-20 23:56:14
阅读次数:
321