上机实验安排.ppt

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

实验教材;实验时间:第7周-第12周(6周),每周二晚上7:30-9:00 实验地点:文波楼机房217 ;实验前,认真学习教材以及实验指导书的相关内容,提前做好实验准备。 实验结束后提交实验报告,实验报告内容应包括(参照《实验报告格式.doc》): 实验目的、实验内容、设计思路和流程框图,源程序(含注释)清单、测试结果以及实验总结。 ? 实验报告杜绝抄袭现象,一经发现雷同,双方成绩均以0分计算。 实验报告完成后班长收齐上交。 ;实验项目一:进程同步与互斥? 1、预习要求: 进程的基本概念;进程的同步和互斥 2、实验目的: (1)掌握进程同步和互斥的含义; (2)能进行多进程的设计。 3、实验内容及要求: 参照教材第3章和《操作系统实验指导》实验一的要求,用信号量机制实现生产者和消费者问题。;实验项目一:进程同步与互斥 ? 一、实验目的 掌握基本的进程同步与互斥算法,理解生产者-消费者问题。 学习使用Windows 2000/XP中基本的同步对象,掌握相关API的使用方法。 了解Windows 2000/XP中多线程的并发执行机制,实现进程的同步与互斥。;进程是一个可以拥有资源的基本单位。 进程是一个可以独立调度和分派的基本单位。;为解决此问题,人们想到将进程的上述两个属性分开,即对作为调度和分派的基本单位,不同时作为拥有资源的基本单位;对于拥有资源的单位,不对之进行频繁切换 。 线程因而产生。; 定义:线程是进程中的一个实体,是被系统独立调度和分配的基本单位,故又称为轻权(轻型)进程(Light Weight Process)。;线程(thread)和进程(process)的关系;线程的特点;线程与进程的比较; 在传统OS中,拥有资源、独立调度和分派的基本单位都是进程,在引入线程的OS中,线程是调度和分派的基本单位,而进程是拥有资源的基本单位。 在同一个进程内线程切换不会产生进程切换,由一个进程内的线程切换到另一个进程内的线程时,才会引起进程切换。 ; 无论是传统OS,还是引入线程的OS,进程都是拥有资源的独立单位,线程一般不拥有系统资源,但它可以访问隶属进程的资源。即一个进程的所有资源可供进程内的所有线程共??。; 进程的创建和撤消的开销要远大于线程创建和撤消的开销。因为,进程切换时,当前进程的CPU环境要保存,新进程的CPU环境要设置,线程切换时只须保存和设置少量寄存器,并不涉及存储管理方面的操作,因此线程切换的开销远小于进程切换的开销。 同一进程内的各线程由于它们拥有相同的地址空间,它们之间的同步和通信的实现也变得比较容易。; 线程和进程一样,都有自己的状态。线程中所使用的同步控制机制与进程中所使用的同步控制机制相同。 进程的调度、同步等大多由OS内核完成,而线程的控制既可以由OS内核(内核提供API)进行,也可以由用户控制。;实验项目一:进程同步与互斥? 二、实验内容及要求 实验内容: 以生产者-消费者模型为依据,在Windows 2000/XP环境下创建一个控制台进程,在该进程中创建n个线程模拟生产者和消费者,实现进程(线程)的同步与互斥。 实验要求: 学习并理解生产者-消费者模型及其同步和互斥规则; 学习了解Windows同步对象及其特性; 熟悉实验环境,掌握相关API的使用方法; 设计程序,实现生产者-消费者进程(线程)的同步与互斥; 每个人提交一份实验报告。;生产者和消费者问题;实验项目一:进程同步与互斥 ? 三、相关基础知识介绍 同步对象 同步对象是指Windows中用于实现同步与互斥的实体,包括信号量(Semaphore)、互斥量(Mutex)、临界区(Critical Section)和事件(Events)等。本实验中使用到信号量、互斥量和临界区三个同步对象。 同步对象的使用步骤: 创建/初始化同步对象。 请求该同步对象,随即进入临界区(这一步相当于P操作)。 释放该同步对象(这一步相当于V操作)。 这些对象在一个线程中创建,在其它线程中都可以使用。 ;实验项目一:进程同步与互斥 ? 三、相关基础知识介绍 相关API的功能及使用 我们利用Windows SDK提供的API编程实现实验题目的要求,在VC中包含有Windows SDK的所有工具和定义。要使用这些API,需要包含对这些函数进行说明的SDK头文件——最常见的是Windows.h。 下面给出的是本实验使用到的API的功能和使用方法的简单介绍。 ;实验项目一:进程同步与互斥 相关API的功能及使用(具体的用法可以参考MSDN) (1) CreateThread 功能:创建一个线程,该线程在调用进程的地址空间中执行。 格式: HANDLE CreateThread( LPSECURITY_ATTRIBUTES lpThreadAttr

文档评论(0)

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

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

1亿VIP精品文档

相关文档