FIFO(first in first out)最先被写入文件的字节总是最先被读出。
FIFO在文件系统中不拥有磁盘块,打开的FIFO文件时一个与内核缓冲区相关的区域,用来存放两个进程之间交换的数据。且FIFO的文件名包含在系统的,目录树当中,因此任何进程都可以访问这个FIFO文件。
FIFO(有名管道)可以用于任意两个进程之间的数据交换,而且管道的读端和写端也以文件的方式给出(只不过这个文件需要我们自己给路径和名字),所以和无名管道一样,对其读写就相当于是对一个文件的读写,同样读取有名管道的数据内容后,管道中的内容就消失了。
具体operation如下
1.创建管道 mkfifo()
2.删除管道 unlink()
3.打开管道,读管道,写管道。。。 open(), read(), write().....
4.关闭管道 close()
这里先给出一个写进程
#include
#include
#include
#include
#in