Linux创建FIFO文件类型的方法

2016-03-31 15:50 11 1 收藏

下面图老师小编跟大家分享一个简单易学的Linux创建FIFO文件类型的方法教程,get新技能是需要行动的,喜欢的朋友赶紧收藏起来学习下吧!

【 tulaoshi.com - 服务器 】

Linux创建FIFO文件类型的方法

   FIFO管道是一种文件类型,在Linux上创建FIFO非常容易,FIFO文件固有管道的特性,但和pipe管道有一定的区别,下面小编将针对FIFO管道的创建和使用做个详细介绍,以便你有个详细的了解。

Linux创建FIFO文件类型的方法   图老师

  FIFO,又称作命名管道(named pipe),它是Linux系统中用于进程间通信的一种方法。

    FIFO和pipe的区别在于:

  FIFO在文件系统中有对应的inode,可以通过ls命令查看。

  sh-3.2# ls -lhF 。/fifo_file

  100 prwxrwxrwx 1 root root 0 Jan 1 1970 。/fifo_file|

  sh-3.2#

  正因为它有一个名字,所以任何进程都可以访问它,所以FIFO可用于任意两个进程之间的通信。

  pipe没有名字,在现有文件系统中无法查看到它的存在。

  它只能用于父子进程、兄弟进程等具有血缘关系的进程间通信。

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/fuwuqi/)

    创建FIFO的方法如下:

  1. 调用umask系统调用来设定创建文件的权限,

  #include 《sys/types.h》

  #include 《sys/stat/h》

  mode_t umask(mode_t mask);

  2. 调用unlink系统调用先删除已经存在的fifo,

  #include 《unistd.h》

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/fuwuqi/)

  int unlink(const char *pathname);

  3. 调用mkfifo库函数去创建一个FIFO文件,

  #include 《sys/types.h》

  #include 《sys/stat.h》

  int mkfifo(const char *pathname, mode_t mode);

  或者可以通过调用mknod系统调用并且指定参数mode为S_IFIFO也可以创建一个FIFO文件,

  #include 《sys/types.h》

  #include 《sys/stat.h》

  #include 《fcntl.h》

  #include 《unistd.h》

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/fuwuqi/)

  int mknod(const char *pathname, mode_t mode, dev_t dev);

    注意:

  1. 使用FIFO进行通信,每次传输的数据要限定在PIPE_BUF之内;

  2. 对于FIFO的访问就像访问正规文件(regular file)一样,可以使用open/read/write/close等系统调用进行访问。

    使用FIFO的应用有:

  1. 单纯的生产者/消费者问题,一个进程读数据,一个进程写数据;

  2. 实现client/server架构的程序,客户端和服务器端通过FIFO进行通信。

  上面就是Linux创建FIFO管道的方法介绍了,本文除了介绍了FIFO管道的创建外,还稍微介绍了下FIFO的使用及其注意事项,在使用的时候需特别注意。

来源:http://www.tulaoshi.com/n/20160331/2051299.html

延伸阅读
标签: 电脑入门
有用户在使用Win10系统时,可能由于安装其他浏览器时错误操作,导致IE浏览器无法打开诸如HTML等一些格式的网页文件。要解决这个问题,我们需要设置IE浏览器关联的文件类型。下面是操作步骤。 步骤 1.打开Internet选项。 2.点击程序,选择设置关联。 3.选择要关联的扩展名,保存即可。
标签: 服务器
在Linux下创建分区和文件系统的方法详解   在 Linux 中创建分区或新的文件系统通常意味着一件事:安装 Gnome Parted 分区编辑器(GParted)。对于大多数 Linux 用户而言,这是唯一的办法。不过,你是否考虑过在终端创建这些分区和文件系统?当然可以!以下就是方法! 使用 CFdisk 创建一个基本的 Linux 分区 以下是如何在命令行...
标签: 电脑入门
1、在文件夹界面中点击展开图标按钮,如下图所示。或者按Ctrl+F1热键,展开功能区; 2、点击文件夹菜单中的查看,然后点击更改文件夹和搜索选项;如下图所示: 3、点击查看选项卡,将隐藏已知文件类型的扩展名此项的勾选取消,点击确定即可显示已知文件类型的扩展名。如下图所示:
提起PPT,办公人员都应该知道的,主要使用它来制作一些幻灯片和课件辅助我们完成工作,从事办公相关的人员应该每天都会使用它,如果要是遇到PPT打不开或者出现一些其他异常现象如:Windows无法打开此文件、在本机打不开PPT文件,但是在别的计算机上可以打开、PowerPoint无法打开××代表的文件类型等等,这些该怎么处理呢?如果大家...
标签: Web开发
代码如下: asp:RegularExpressionValidator   id="FileUpLoadValidator" runat="server"   ErrorMessage="Upload Jpegs and Gifs only."   ValidationExpression="^(([a-zA-Z]:)|(\\{2}\w+)\$?)(\\(\w[\w].*))(.jpg|.JPG|.gif|.GIF)$"   ControlToValidate="FileUpload...

经验教程

59

收藏

73
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部