- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
齐齐哈尔大学操作系统课程综合实践
题目:多进程同步方法解决生产
者一消费者问题
班级:_0
姓名:_0
学号:_0
指导教师:_0
2011年12月7日
综合实践评分表
班级 0
姓名 0
指导教师 0
题目:多进程同步方法解决生产者一消费者问题
评分标准
评分标准
分数权
重
评分的依据
得分
A
C
选题
10
选题符合犬纲耍求, 题目较新颖,工作量 大
选题基本符合大纲 要求,工作量适中
工作态度
10
态度端止,能主动认 真完成各个环节的工 作,不迟到早退,出 勤好。
能够完成各环节基 本工作,出勤较好。
存储结构、算 法描述
20
能正确选择存储结 构,定义准确,算法 流程图或类C语言描 述的算法准确无误
能正确选择存储结 构,算法流程图或类 C语言描述的算法 基本准确
独立解决问 题的能力
10
具有独立分析、解决 问题能力,冇一定的 创造性,能够独立完 成软件的设计与调试 工作,程序结构清晰, 逻辑严谨,功能完善。
有一定的分析、解决 问题能力。能够在老 师指导下完成软件 的设计与调试工作, 程序功能较完善。
答辨问题回 答
20
能准确回答老师提出 的问题
能基木准确回答老 师捉出的问题
程序运行情 况
10
程序运行正确、界面 清晰,测试数据设计 合理。
程序运行正确、界面 较清晰,能给出合适 的测试数据。
综合实践报 告
20
格式规范,层次清晰, 设计思想明确,解决 问题方法合理,体会 深刻。
格式较规范,设计思 想基本明确,解决问 题方法较合理。
总分
指导教师(签字):
注:介于A和C之间为B级,低于C为D级和E级。按各项指标打分后,
总分在90?100为优,80?89为良,70?79为中,60?69为及格,60分以下 为不及格。
多进程同步方法解决生产者一消费者问题
摘要:本文论述了多进程同步方法解决生产者一消费者问题的过程。该程序使学生对操作系 统的工作机制有了初步的了解,其主要目的是使学牛了解和撑握在Linux系统平台卜?的C 语言编程,用来解决实现牛活屮遇到的问题。并以Linux系统开发平台,以及虚拟机來实现。 关键字:生产者一消费者问题,Linux系统平台,虚拟机,信号量,线程(thread)
多进程同步方法解决生产者一消费者问题
一、 课程设计所需设备
计算机一台,Red Hat linux9. 03系统一套。
二、 课程设计预期目的
通过研究Linux的进程机制和信号量实现生产者消费者问题的并发控 制。
三、 课程设计任务
用多进程同步方法解决生产者-消费者问题
设计口的:通过研究Linux的进程机制和信号量实现生产者消费者问题 的并发控制.
说明:有界缓冲区内设有20个存储单元,放入/取出的数据项设定为1-20 这20个整型数.
设计要求:
1) 每个生产者和消费者对有界缓冲区进行操作后,即时显示有界缓冲区 的全部内容,当前指针位置和生产者/消费者线程的标识符.
2) 生产者和消费者各有两个以上.
3) 多个生产者或多个消费者之间须有共享对缓冲区进行操作的函数代 码.
四、 课程设计基本思想
多进程是一种非常简洁的多任务操作方式。在Linux系统K,启动一个 新的进程必须分配给它独立的地址空间,建立众多的数据表來维护它的代码 段、堆栈段和数据段,这是一种烦琐的多任务工作方式。
生产者-消费者方案是多进程应用程序开发中最常用的构造之一。因此困 难也在于此。因为在一个应用程序中可以多次重复生产者-消费者行为,其代 码也可以如此。设计中创建了 Consumer类,该类通过在一些多进程应用程 序中促进代码重用以及简化代码调试和维护來解决这个问题。多进程应用程 序通常利用生产者-消费者编程方案,其屮由生产者进程创建重复性作业,将 其传递给作业队列,然后由消费者进程处理作业。
多进程是一种使应用程序能同时处理多个操作的编程技术。通常有两种 不同类型的多进程操作使用多个进程:适时事件,当作业必须在特定的时间 或在特定的间隔内调度执行时;后台处理,当后台事件必须与当前执行流并 行处理或执行时;适时事件的示例包括程序提醒、超时事件以及诸如轮询和 刷新Z类的重复性操作。后台处理的示例包括等待发送的包或等待处理的已 接收的消息。
生产者-消费者方案很适合于后台处理类别的情况。这些情况通常围绕一 个作业“生产者”方和一个作业“消费者”方。当然,关于作业并行执行还 有其它考虑事项。在大多数情况下,对于使用同一资源的作业,应以FCFS的 方式按顺序处理,这可以通过使用单进程的消费者轻松实现。通过使用这种 方法,使用单个进程来访问单个资源,而不是用多个进程来访问单个资源。 要启用标准消费者,当作业到來时创建一个作业队列來存储所有作业。生产 者进程通过将新对象添加到消费者队列来交付这个耍处理的新对彖。然后
文档评论(0)