下载此文档

《操作系统》课程设计-进程通信与进程同步机制实现.doc


文档分类:IT计算机 | 页数:约23页 举报非法文档有奖
1/23
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/23 下载此文档
文档列表 文档介绍
资料
江苏大学
《操作系统》课程设计说明书
设计题目进程通信与进程同步机制实现
学生姓名
指导老师
学院计算机学院
专业班级软件工程1002班
学号 3100608047
完成时间 2013年1月9日
课程设计题目
某银行提供10个服务窗口(7个对***务窗口,3个对公服务窗口)和100个供顾客等待的座位。顾客到达银行时,若有空座位,则到取号机上领取一个号,等待叫号。取号机每次仅允许一位顾客使用,有对公和对私两类号,美味顾客只能选取其中一个。当营业员空闲时,通过叫号选取一位顾客,并为其服务。请用P、V操作写出进程的同步算法。
课程设计目的
1、掌握基本的同步与互斥算法,理解银行排队系统操作模型。
2、学****使用Windows 2000/XP中基本的同步对象,掌握相关API的使用方法。
3、了解Windows 2000/XP中多线程的并发执行机制,实现进程的同步与互斥。

◆学****并理解生产者/消费者模型及其同步/互斥规则;
◆学****了解Windows同步对象及其特性;
◆熟悉实验环境,掌握相关API的使用方法;
◆设计程序,实现生产者/消费者进程(线程)的同步与互斥;
◆提交实验报告。


同步对象是指Windows中用于实现同步与互斥的实体,包括信号量(Semaphore)、互斥量(Mutex)、临界区(Critical Section)和事件(Events)等。本实验中使用到信号量、互斥量和临界区三个同步对象。
:
◆创建/初始化同步对象。
◆请求同步对象,进入临界区(互斥量上锁)。
◆释放同步对象(互斥量解锁)。

我们利用Windows SDK提供的API编程实现实验题目要求,而VC中包含有Windows SDK的所有工具和定义。要使用这些API,需要包含堆这些函数进行说明的SDK头文件——(特殊的API调用还需要包含其他头文件)。
本实验使用到的API的功能和使用方法简单介绍
1、WaitForSingleObject( hSemaphoreChairs , INFINITE );
WaitForSingleObject( hMutex , INFINITE );
功能——使程序处于等待状态,直到信号量hHandle出现(即其值大于等于1)或超过规定的等待时间
格式
DWORD WaitForSingleObject(HANDLE hHandle, DWORD dwMilliseconds);
参数说明
hHandle——信号量指针。
dwMilliseconds——等待的最长时间(INFINITE为无限等待)。
2、ReleaseMutex( hMutex );
功能——打开互斥锁,即把互斥量加1。成功调用则返回0
格式
BOOL ReleaseMutex(HANDLE hMutex);
ReleaseSemaphore( hSemaphoreShoppers ,1,NULL);
功能——对指定信号量加上一个指定大小的量。成功执行则返回非0值
格式
BOOL ReleaseSemaphore(HANDLE hSemaphore,
LONG lReleaseCount,
LPLONG lppreviousCount );
参数说明
hSemaphore——信号量指针。
lReleaseCount——信号量的增量。
lppreviousCount——保存信号量当前值。
3、hShoppersThread = CreateThread ( NULL ,0 , fnTreadFunction ,NULL , 0 ,NULL );
CreateThread
功能——创建一个在调用进程的地址空间中执行的线程
格式
HANDLE CreateThread( LPSECURITY_ATTRIBUTES lpThreadAttributes,
DWORD dwStackSize,
LPTHREAD_START_ROUTINE lpStartAddress,
LPVOID lpParamiter,
DWORD dwCreationFlags,
Lpdword lpThread );
参数说明
lpThreadAttributes——指向一个LPSECURITY_ATTRIBUTES(新线程的安全性描述符)。
dwStackSize——定义原始堆栈大小。
lpStartAddress——指向使用LPTHRAED_START_ROUTINE类型定义的函数。
lp

《操作系统》课程设计-进程通信与进程同步机制实现 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数23
  • 收藏数0 收藏
  • 顶次数0
  • 上传人3346389411
  • 文件大小0 KB
  • 时间2014-02-28