贵州大学实验报告
学院:                  专业:                    班级:
姓名
学号
进程间通信管道
实验组
实验时间
指导教师
王道书
成绩
实验项目名称
进程的管道通信
实验目的
1、了解什么是管道
2、熟悉UNIX/LINUX支持的管道通信方式
实验要求
  PC机或工作站一台;
RedHat9.0操作系统;
实验内容
编写程序实现进程的管道通信。用系统调用pipe( )建立一管道,二个子进程P1和P2分别向管道各写一句话:
    Child 1 is sending a message!
    Child 2 is sending a message!
父进程从管道中读出二个来自子进程的信息并显示(要求先接收P1,后P2)。
实验数据
实验总结
1、程序中的sleep(5)起什么作用?
答:起到延迟的作用
2、子进程1和2为什么也能对管道进行操作?
    答:利用pipe( )建立起来的无名文件。只用该系统调用所返回的文件描述符来标识该文件,故只有调用pipe()的进程及其子孙进程才能识别此文件描述符,才能利用该文件(管道)进行通信。当这些进程不再使用此管道时,核心收回其索引结点。因为父进程用pipe()创建了一个无名管道,子进程12都知道该管道文件描述符,所以进程12都能对管道进行操作。
指导教师意见
签名:                   
注:各学院可根据教学需要对以上栏木进行增减。表格内容可根据内容扩充。