第 1 页 共 6 页 实验报告 专业 网络工程 班级 08102 班 学号 01 号 姓名 胡双双 课程名称 操作系统 学年2 0 1 0 -2 0 1 1 学期 下 课程类别 专业必修 ■限选□任选□实践□ 实验时间 2 0 1 0 年11 月 3 日 实验名称 实验一:生产者与消费者问题 实验目的和要求 全面理解生产者与消费者问题模型,掌握解决该问题的算法思想,正确使用同步机制
实验软硬件要求 Pentiu m(R) Du al-Core CPU 1
96G 内存 WINDOWS XP Professional Visu al C++6
0 实验内容、方法和步骤(可附页) 问题描述:一组生产者向一组消费者提供商品,共享一个有界缓冲池,生产者向其中放入商品,消费者从中取得商品
假定这些生产者和消费者互相等效,只要缓冲池未满,生产者可将商品送入缓冲池;只要缓冲池未空,消费者可从缓冲池取走一商品
功能要求:根据进程同步机制,编写一个解决上述问题的程序,可显示缓冲池状态、放商品、取商品等过程
具体参数:有 1 个生产者进程; 有 1 个消费者进程; 缓冲区单元个数 BUFFER_NUM =5; 不同的生产进程可生产不同的产品,自己可任意定义,在本程序中是直接将相应生产者代号放入缓冲区,消费时将某消费者消费某生产者的信息显示出来 实验结果: 见截图 小结 从此次试验中,学到了很多关于编程的知识,以前对于编程的认识只停留在一些简单的算法上,并没有系统的进行编程训练
此次的试验是以前从没接触过的多线程,中间涉及的同步及互斥问题,在设计软件及系统时,都是极其重要的
多线程实验对于我们现阶段确实有点偏难,不过,在经过请教同学及看参考书,终于自己写出了一个相对于简单一点的生产者消费者的多线程程序
评定成绩: 批阅教师: 年 月 日 第 2 页 共 6 页 一、问题概述 一组生产