21.有名管道fifo

1.特点
  有名管道
  在磁盘上有这样一个文件,可通过命令ls -l查看前缀带p的文件
  伪文件,在磁盘上大小永远为0
  在内核中有一个对应的缓冲区
  半双工的通信方式

  默认阻塞

2.使用场景

  没有血缘关系的进程间通信

3.创建方式
  命令:mkfifo 管道名

  函数:mkfifo 类似于mkdir

4.fifo文件可以使用IO函数进行操作
  open/close
  read/write

  不能执行lseek操作

5.进程间通信

(1) fifo文件---myfifo

(2)两个不相干的进程A(a.c)和B(b.c)
  a.c ---> read
  int fd = open("myfifo",O_RDONLY);
  read(fd,buf,sizeof(buf));

  close(fd);

  b.c ---> write
  int fd1 = open("myfifo",O_WRONLY);
  write(fd1,"hello,world",11);
  close(fd1)

猜你喜欢

转载自blog.csdn.net/disappear_xuechao/article/details/80891213