实验三 进程间通信和信号灯.docxVIP

  • 54
  • 0
  • 约5.64千字
  • 约 6页
  • 2017-04-22 发布于湖北
  • 举报
实验三 进程间通信和信号灯

实验三 进程间通信和信号灯 班级: 姓名: 学号: 实验目的 理解Linux关于进程通信的概念。 掌握通过无名管道PIPE进行进程间通信的方法。 巩固进程同步概念和实现进程同步的方法。 加深对生产者消费者问题的理解。 学会使用Linux 信号量控制系统调用(PV操作)。 实验内容 编写一个程序,该程序主进程用来接受用户键盘输入的信息,子进程则将键盘输入的内容显示在屏幕上,该过程要求重复出现,直到用户使用ctrl+c终止程序运行。该实验内容其实质也是生产者消费者的问题,即一个进程产生数据(由用户输入),另一个进程输出之前由用户输入的数据。两个进程之间通过进程通信(IPC)技术来实现消息的传递,为了简化编码的复杂度,我们使用Linux中的管道技术(无名PIPE)实现进程间通信(有兴趣的同学,可以在完成后尝试使用共享内存的方式来进行进程间通信)。我们要求使用PV操作对信号量进行控制,从而实现生产者进程和消费者进程之间合理有序的工作(进程同步问题的进一步深入理解)。这里的PV操作,我们利用Linux系统提供的信号量系统调用来实现。 学习管道系统调用 所需头文件 : #includeunistd.h int pipe(int filedes[2]); /*pipe()会建立管道,并将文件描述词由参数 filedes 数组返

文档评论(0)

1亿VIP精品文档

相关文档