免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 4565 | 回复: 13
打印 上一主题 下一主题

UNIX中的FIFO管道的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2003-05-15 21:25 |只看该作者 |倒序浏览
通过mkfifo建立FIFO管道时,需要指定管道的pathname,这是不是意味着fifo管道是物理存在于磁盘上的?如果是这样,那么进程交换数据的话不是先要通过磁盘吗?

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
2 [报告]
发表于 2003-05-15 21:34 |只看该作者

UNIX中的FIFO管道的问题

进程交换数据不一定都用管道呀

论坛徽章:
0
3 [报告]
发表于 2003-05-17 16:33 |只看该作者

UNIX中的FIFO管道的问题

我知道IPC可以有很多种方法,我只想看看我的猜想是不是对的

论坛徽章:
0
4 [报告]
发表于 2003-07-29 14:39 |只看该作者

UNIX中的FIFO管道的问题

the file name is just a index point to some struct in kernel,which is unique in the whole system.

You can see the length of all the FIFO files is always unchanged even when you write data into such FIFO while not read it out.

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
5 [报告]
发表于 2003-07-30 11:37 |只看该作者

UNIX中的FIFO管道的问题

楼主的猜测有一定的道理。不过事实上,不是那会事。

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
6 [报告]
发表于 2003-07-30 11:49 |只看该作者

UNIX中的FIFO管道的问题

偶还是再说一点,一方误导你

和普通管道一样。尽管FIFO文件的节点在磁盘上,但是文件的数据在内存缓冲页面中。因此这个文件仅仅起到了标识文件的作用。

然而,如果想实现随文件系统持续的FIFO,情况就大不相同。

论坛徽章:
0
7 [报告]
发表于 2003-07-30 19:06 |只看该作者

UNIX中的FIFO管道的问题

管道本来就是一种文件系统,他的实现就是在文件系统中。

论坛徽章:
0
8 [报告]
发表于 2003-07-30 19:24 |只看该作者

UNIX中的FIFO管道的问题

[quote]原帖由 "蓝色键盘"]楼主的猜测有一定的道理。不过事实上,不是那会事。[/quote 发表:
     
我觉的这种猜测应该是正确的。

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
9 [报告]
发表于 2003-07-31 14:32 |只看该作者

UNIX中的FIFO管道的问题

如果不是随文件系统持续的话,数据交换不是通过磁盘的。在内存中处理。
普通的管道也一样,和FIFO不同的是,普通的管道纯粹在内存中,如果进程之间没有什么亲缘关系的话,无法访问的。

论坛徽章:
0
10 [报告]
发表于 2003-07-31 20:05 |只看该作者

UNIX中的FIFO管道的问题

你说的普通管道指的是那种管道。
    管道好像就分有名和无名呀。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP