1、管道通信的特点:
(1)管道是半双工的,先进先出的,它把一个进程的输出和另一个进程的输入连接在一起
(2)一个进程(写进程)在管道的尾部写入数据,另一个进程(读进程)从管道的头部读出数据
2、无名管道和有名管道分别适用的进程是什么?
无名管道用于父子进程之间的通信;有名管道用于运行同一个系统中的任意两个进程间的通信
3、无名管道和有名管道创建的步骤
无名管道:创建管道——读管道——写管道——关闭管道
有名管道:创建管道——删除管道——打开管道——关闭管道——读管道——写管道
管道用于不同进程间的通信,通常先创建一个管道,在通过fork函数创建一个子进程,该子进程会继承父进程所创建的管道
4、管道通信函数
Pipe
原型:int pipe(int filedes[2])
参数:新建的两个描述符由filedes数组返回。filedes[0]表示管道的读取端,filedes[1]表示管道的写入端
返回值:成功:0;出错:-1
头文件:#include<unistd.h>
实验代码:
#include <unistd.h>
#include &