计算机操作系统实验讲义

上传人:101****457 文档编号:89233007 上传时间:2019-05-21 格式:DOC 页数:34 大小:194KB
返回 下载 相关 举报
计算机操作系统实验讲义_第1页
第1页 / 共34页
计算机操作系统实验讲义_第2页
第2页 / 共34页
计算机操作系统实验讲义_第3页
第3页 / 共34页
计算机操作系统实验讲义_第4页
第4页 / 共34页
计算机操作系统实验讲义_第5页
第5页 / 共34页
点击查看更多>>
资源描述

《计算机操作系统实验讲义》由会员分享,可在线阅读,更多相关《计算机操作系统实验讲义(34页珍藏版)》请在金锄头文库上搜索。

1、计算机操作系统实验指导书曲阜师范大学计算机学院内容简介操作系统是计算机教学中最重要的环节之一,也是计算机专业学生的一门重要的专业课程。操作系统质量的好坏,直接影响整个计算机系统的性能和用户对计算机的使用。一个精心设计的操作系统能极大地扩充计算机系统的功能,充分发挥系统中各种设备的使用效率,提高系统工作的可靠性。由于操作系统涉及计算机系统中各种软硬件资源的管理,内容比较繁琐,具有很强的实践性。要学好这门课程,必须把理论与实践紧密结合,才能取得较好的学习效果。培养计算机专业的学生的系统程序设计能力,是操作系统课程的一个非常重要的环节。通过操作系统上机实验,可以培养学生程序设计的方法和技巧,提高学生

2、编制清晰、合理、可读性好的系统程序的能力,加深对操作系统课程的理解。使学生更好地掌握操作系统的基本概念、基本原理、及基本功能,具有分析实际操作系统、设计、构造和开发现代操作系统的基本能力。 本书通过操作系统编程接口,提供一些编程指导,以此加深学生对操作系统工作原理的领会和对操作系统实现方法的理解,并且使学生在操作系统层面的程序设计得到基本的训练。本书提供了操作系统的安装与使用、生产者和消费者的问题、银行家调度算法、操作系统内存结构、简单文件系统的实现以及操作系统构成实验等6个实验。本书的使用对象是曲阜师范大学计算机科学与技术专业(本科)的学生,也可作为普通高等院校操作系统实验教学的指导书。实验

3、一 操作系统的安装与使用1实验目的(1)巩固课程中讲授的WINDOWS 2000的使用知识,提高学生的WINDOWS 2000、WINDOWS XP或WINDOWS SEVER 2003等操作系统的实战演练水平。(2)熟悉Windows 2000等操作系统系统的定制安装过程,明确各安装部件的作用。要求学生掌握图形用户接口元素和图形用户接口元素的基本操作;熟悉控制面板中各组件的作用及设置;能够了解Windows系统对各种软件资源和硬件资源管理的策略。(3)结合教材绪论,让学生对WINDOWS系统进程管理、处理机的调度与死锁、存储器管理、设备管理、文件管理以及系统接口有一个感性的认识并熟悉相关操作

4、。2实验预备知识(1)阅读教材第一章(操作系统引论),熟悉操作系统的目标、作用和层次;了解操作系统的发展过程;熟悉操作系统实现的功能(存储器管理功能、处理机管理功能、设备管理功能、文件管理功能以及用户接口);了解操作系统的发展的历史和未来的发展趋势。(2)完成一本WINDOWS操作系统技术书籍的阅读(根据个人情况任选)。(3)学习微软认证(MCSE)中有关WINDOWS 2000 操作系统的知识(通过课堂补充教授、阅读有关书籍或网上资料)。3实验环境(1)PC计算机;(2)WINDOWS 2000、WINDOWS XP或WINDOWS SEVER 2003等操作系统的安装盘。4实验时间:2个机

5、时。5实验内容 (1)了解安装WINDOWS 2000(或WINDOWS XP、 WINDOWS SEVER 2003)的硬件需求;熟悉安装过程。熟悉安装过程中各种组件的选择;设置操作系统双重启动;熟悉各种物理设备驱动程序的安装。(2)熟悉WINDOWS 2000的用户界面。重点掌握各类操作系统的各类用户接口;掌握资源管理器的使用。(3)掌握对操作系统的配置和维护,掌握控制面板的使用。掌握安装和删除硬件设备的方法,熟练对打印机、鼠标、键盘、网卡、显示卡、声卡等硬件设备进行配置。(4)了解网络的配置和网络协议的原理和设置,熟练对计算机进行网络设置。(5)熟练掌握WINDOWS 2000的管理工具

6、。利用“计算机管理”选项对计算机进行设置。“计算机管理工具”为用户提供六种系统工具:“事件查看器”,“系统信息”、“性能日志和警报”,“共享文件夹”、设备管理器“和”本地用户和组。(6)了解WINDOWS 2000活动目录。目录是一个存储对象信息的分层结构,要求学生掌握配置活动目录的方法。(7)掌握WINDOWS 2000的存储管理。要求学生掌握以下内容:WINDOWS 2000的基本存储和动态存储;智能镜像、存储工具、视图的设置和硬盘转换、动态磁盘中的卷以及相关卷的操作、磁盘碎片整理程序。(8)熟悉用WINDOWS任务管理器来观察计算机的应用程序列表、进程列表以及系统的处理机使用情况、内存分

7、配和使用情况、句柄数、线程数等等。6思考WINDOWS操作系统中如何实现了处理机管理、内存管理、设备管理、文件管理和磁盘管理?如何操作?有条件的同学可参阅有关LINUX书籍和上机实践,思考和了解在LINUX操作系统中是如何实现了处理机管理、内存管理、设备管理、文件管理和磁盘管理? 实验二 生产者和消费者的问题1 实验目的(1)加深对进程概念的理解,明确进程和程序的区别。(2)进一步认识并发执行的实质。(3)验证用信号量机制实现进程互斥的方法。(4)验证用信号机制实现进程同步的方法。2实验预备内容(1)阅读课本有关进程管理以及进程同步的有关章节,对临界区和临界资源概念要清晰,充分理解信号信号量机

8、制。(2)阅读几种经典进程同步问题的算法并理解。熟练掌握生产者消费者的算法思想。3实验环境(1)一台运行Windows 2000 professional操作系统的计算机。(2)选用turbo c、visual c+、Delphi、c+ builder或visual basic等任何一种语言。4实验时间:4个机时。5实验内容问题描述:考虑有一些生产者和消费者进程,生产者进程生产信息并把它们放入缓冲池中,消费者从缓冲池中取走信息。生产者消费者问题是相互合作的进程关系的一种抽象,如在输入时,输入进程是生产者,计算进程是消费者;而在输出时,则计算进程是生产者,打印进程是消费者。请使用信号量机制来解决

9、生产者消费者问题。缓冲区互斥关系:(I)设缓冲池有n个单元。(II)当n个单元装满时,生产者必须等待。(III)当缓冲池空时,消费者必须等待。6参考算法 Var mutex,empty,full:semaphore:=1,n,0; buffer:array0,n-1 of item; in,out:integer:=0,0;生产者进程:repeatproduce an item in nextp wait(empty); wait(mutex); buffer(in):=nextp; in:=(in+1) mod n; signal(mutex); signal(full);until fal

10、se;消费者进程:repeatwait(full); wait(mutex); nextc:=buffer(out); out:=(out+1) mod n; signal(mutex); signal(empty); consume the item in nextcwait(S)操作:S=S-1;若S=0,则进程继续运行。若S0,则进程继续执行;若S=0,则从信号量等待队列中移处第一个进程,使其变为就绪状态,然后再返回原进程继续执行。7实验要求在程序编制中,应有数据显示,最好采用图形界面显示。生产者和消费者的进程采用程序模拟的方法运行。实验三 银行家调度算法1实验目的(1)使学生加深对死锁

11、的理解,理解预防死锁的思想和方法,使学生明确系统安全状态的概念。(2)使学生能利用银行家调度算法实现避免死锁。2实验预备内容 阅读死锁的基本概念,产生死锁的原因、产生死锁的必要条件以及处理死锁的基本方法,重点阅读关于死锁避免的章节。3实验环境(1)一台运行Windows 2000 professional操作系统的计算机。(2)选用turbo c、visual c+、delphi、c+ builder或visual basic等任何一种语言,建议用c+。4实验时间:4个机时。5实验内容(1)设置银行家算法中的数据结构(a)可利用资源向量Available 它是一个含有m个元素的数组,其中的每一

12、个元素代表一类可利用资源的数目,其初始值是系统中所配置该类全部可用资源数目。其数值随该类资源的分配和回收而动态地改变。如果Availablej=k表示系统中现有类资源k个。 (b)最大需求矩阵Max 这是一个的矩阵,它定义了系统中n个进程中的每一个进程对m类资源的最大需求。如果Max(i,j)=k,表示进程i需要类资源的最大数目为k。 (c)分配矩阵Allocation 这是一个的矩阵,它定义了系统中每一类资源当前已分配该每一进程的资源数。如果Allocation(i,j)=k,表示进程i当前已分得类资源的数目为k。 (d)分配矩阵Need 这是一个的矩阵,用以表示每一个进程尚需的各类资源数。

13、如果Need(i,j)=k表示进程i还需要类资源k个,方能完成其任务。上述三个矩阵存在如下关系:Need(i,j)=Max(i,j)-Allocation(i,j)(2)银行家算法 设是进程的请求向量。如果 j=k,表示进程需要k个类的资源。当发出资源请求后,系统按下述步骤进行检查: 如果,则转向步骤;否则,认为出错,因为它所需要的资源数已超过它所宣布的最大值。 如果,则转向步骤;否则,表示系统中尚无足够的的资源,必须等待。系统试探把要求的资源分配给进程,并修改下面数据结构中的数值:AvailableAvailable- ;系统执行安全性算法,检查此次资源分配后,系统是否处于安全状态。若安全,

14、才正式将资源分配给进程,以完成本次分配;否则,将试探分配作废,恢复原来的资源分配状态,让进程等待。(3)安全性算法系统所执行的安全性算法描述如下:设置两个向量(a)工作向量Work。它表示系统可提供给进程继续运行所需要的各类资源数目,它含有m个元素,执行安全算法开始时,Work:=Available。(b)Finish。它表示系统是否有足够的资源分配给进程,使之运行完成,开始时先做Finishi :=false;当有足够资源分配给进程时,令 Finishi :=true。从进程集合中找到一个能满足下列条件的进程: (a) Finishi:=false (b) 如找到,执行步骤;否则执行步骤。当进程获得资源后,可顺利执行,直至完成,并释放出分配给它的资源,故应执行: Work:=Work+Allocationi; Finishi:=true; go to step (2) 如果所有进程的Finishi:=true,则表示系统处于安全状态;否则,系统处于不安全状态。6参考算法#include#include

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 其它中学文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号