网站大量收购闲置独家精品文档,联系QQ:2885784924

操作系统课程设计报告lxx作系统课程设计报告lxx操作系统课程设计报告lxx操作系统课程设计报告lxx.doc

操作系统课程设计报告lxx作系统课程设计报告lxx操作系统课程设计报告lxx操作系统课程设计报告lxx.doc

  1. 1、本文档共25页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
操作系统课程设计报告lxx作系统课程设计报告lxx操作系统课程设计报告lxx操作系统课程设计报告lxx

江苏大学 《操作系统》课程设计说明书 设计题目 进程通信与进程同步机制实践 学生姓名 指导老师 薛安荣 学 院 计算机学院 专业班级 软件工程1202班 学号 完成时间 2015年1月2日 课程设计题目 某银行提供5个服务窗口(3个对私服务窗口,1个对公服务窗口,1个理财服务窗口)和10个供顾客等待的座位。顾客到达银行时,若有空座位,则到取号机上领取一个号,等待叫号;若没有空座位,则在门外等待或离开。取号机每次仅允许一位顾客使用,有对公、对私和理财三类号,每位顾客只能选取其中一个。当营业员空闲时,通过叫号选取一位顾客,并为其服务。请用P、V操作写出进程的同步算法。 (1)可限定最大服务人数 (2)办理对私、对公、理财业务随机,可通过随机数产生。 (3)取号时顾客拿到的号含有号码和显示当前等待人数,例如A、B、C分别代表对私、对公、理财,“号码:A5”表示取的是对私服务号,编号是5。 二.课程设计目的 1、掌握基本的同步与互斥算法,理解银行排队系统操作模型。 2、学习使用Windows7中基本的同步对象,掌握相关API的使用方法。 3、了解Windows7中多线程的并发执行机制,实现进程的同步与互斥。 三.课程设计要求 ◆学习并理解生产者/消费者模型及其同步/互斥规则; ◆学习了解Windows同步对象及其特性; ◆熟悉实验环境,掌握相关API的使用方法; ◆设计程序,实现生产者/消费者进程(线程)的同步与互斥; ◆提交实验报告。 四.需要了解的知识 1.同步对象 同步对象是指Windows中用于实现同步与互斥的实体,包括信号量(Semaphore)、互斥量(Mutex)、临界区(Critical Section)和事件(Events)等。本实验中使用到信号量、互斥量和临界区三个同步对象。 2.同步对象的使用步骤: ◆创建/初始化同步对象。 ◆请求同步对象,进入临界区(互斥量上锁)。 ◆释放同步对象(互斥量解锁)。 五.需要用到的API函数及相关函数 我们利用Windows SDK提供的API编程实现实验题目要求,而VC中包含有Windows SDK的所有工具和定义。要使用这些API,需要包含堆这些函数进行说明的SDK头文件——最常见的是Windows.h(特殊的API调用还需要包含其他头文件)。 本实验使用到的API的功能和使用方法简单介绍 1、WaitForSingleObject(cs1,INFINITE); WaitForSingleObject(seat,INFINITE); WaitForSingleObject(mutex,INFINITE); 功能——对请求服务顾客,座位和互斥量信号量进行P操作 格式 DWORD WINAPI WaitForSingleObject( _In_ HANDLE hHandle, _In_ DWORD dwMilliseconds ); 参数说明 hHandle——信号量指针。 dwMilliseconds——等待的最长时间(INFINITE为无限等待)。 2、ReleaseMutex( mutex ); 功能——打开互斥锁,即把互斥量加1。成功调用则返回0 格式 BOOL WINAPI ReleaseMutex( _In_ HANDLE hMutex); 参数说明 hMutex——互斥量 3. ReleaseSemaphore(s3,1,NULL); ReleaseSemaphore(cs1,1,NULL); ReleaseSemaphore(seat,1,NULL); 功能——对窗口,顾客,座位信号量进行V操作 格式 BOOL WINAPI ReleaseSemaphore( _In_ HANDLE hSemaphore, _In_ LONG lReleaseCount,

您可能关注的文档

文档评论(0)

cxiongxchunj + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档