Skip to content

Latest commit

 

History

History
 
 

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 

#使用方法

cd /user_space/fifo/
make
./_main
  • test1()函数是在两个线程之间用FIFO进行通信
  • test2()函数是在两个线程之间使用FIFO进行通信,且使用同一个文件描述符进行读写,关闭文件有点小问题
  • test3()函数是在两个进程之间使用FIFO进行,虽然此处使用的是父子进程,但是FIFO并不受此限制,此处仅仅是为了方便才这样写的
  • test4()函数情形test3()的区别是使用标准C库函数来进行读写 #描述 FIFO(First In First Out),又称为有名管道,弥补了管道只能用于有共同祖先的进程间通信的不足,相对于pipe,fifo主要有以下几个优点:
  1. 可以用于任意进程之间通信
  2. 可以有多个读/写进程同时对管道进行操作
  3. 可以像变通文件一样管理管道的权限
  4. 可以使用标准文件读写方式来操作管道(打开,读/写,关闭)