2022年2022年计算机操作系统实验指导书 .pdf

上传人:Che****ry 文档编号:34875910 上传时间:2022-08-19 格式:PDF 页数:20 大小:230.60KB
返回 下载 相关 举报
2022年2022年计算机操作系统实验指导书 .pdf_第1页
第1页 / 共20页
2022年2022年计算机操作系统实验指导书 .pdf_第2页
第2页 / 共20页
点击查看更多>>
资源描述

《2022年2022年计算机操作系统实验指导书 .pdf》由会员分享,可在线阅读,更多相关《2022年2022年计算机操作系统实验指导书 .pdf(20页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、计算机操作系统实验指导书程 科 白素琴 编写适用专业:计算机科学与技术江苏科技大学电子信息学院2006 年 6 月名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 20 页 - - - - - - - - - 1 前言计算机操作系统( Operating System简称 OS )是计算机中最重要的系统软件,也是最活跃的学科之一,是计算机相关本科专业的核心课程。通过本课程的学习使学生掌握操作系统的基本概念、技术、原理,具备一定的从不同层次分析与使用操作系统功能的能力。了解计

2、算机操作系统方面的新技术、新理论与新发展。本实验指导书,是根据操作系统课程教学大纲的要求而编写的,目的是让学生能够进一步了解操作系统的基本概念、原理,通过综合性、验证性和设计性等实验,熟练掌握操作系统的运行机理和各种算法思想,尤其是操作系统的核心功能。 同时还希望通过实验进一步提高学生的动手能力和综合运用先修课程的能力。根据实验大纲要求,包含5 个实验,且全部为必做的实验,5 个都是设计性实验。本指导书由江苏科技大学电子信息学院计算机系编写。由于编写仓促,难免有错误和不足之处,恳请读者不吝赐教。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - -

3、 - - - 名师精心整理 - - - - - - - 第 2 页,共 20 页 - - - - - - - - - 2 目录前言. 1实验一进程调度 . 3实验二银行家算法 . 6实验三多线程编程 . 10 实验四存储管理 . 12 实验五磁盘调度 . 17 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 20 页 - - - - - - - - - 3 实验一进程调度实验学时: 2 学时实验类型:设计实验要求: 必修一、实验目的多道程序设计中,经常是若干个进程同时处于

4、就绪状态,必须依照某种策略来决定那个进程优先占有处理机。因而引起进程调度。本实验模拟在单处理机情况下的处理机调度问题,加深对进程调度的理解。二、实验内容1优先权法、轮转法简化假设1)进程为计算型的(无I/O)2)进程状态: ready、 running、finish 3)进程需要的CPU 时间以时间片为单位确定2算法描述1)优先权法动态优先权当前运行进程用完时间片后,其优先权减去一个常数。2)轮转法三、流程图名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 20 页 - -

5、 - - - - - - - 4 产生 n 个进程,对每个进程用随机数产生进程的轮转时间片数及进程所需的时间片数,已占用CPU 的时间片数置为0 按进程产生的先后次序拉成就绪队列链链首进程投入运行时间片到,进程所需时间片数减1,已占用 CPU 时间片数加1 输出各进程的运行情况进程所需时间片数=0?撤销该进程就绪队列为空吗?占用 CPU 的时间片数 =轮转时间片数?占用 CPU 的时间片数置为0 把该进程插入就绪队列尾B N Y N Y Y 结束N 开始键盘输入进程数n,和调度方法的选择优先权法?轮转法产生 n 个进程,对每个进程产生一个PCB,并用随机数产生进程的优先权及进程所需的CPU 时

6、间按优先权大小,把n 个进程拉成一个就绪队列初始化其他数据结构区链首进程投入运行时间片到,进程所需的CPU 时间减 1, 优先权减 3,输出个进程的运行情况所需的 CPU 时间 =0?撤销进程就绪队列为空?结束将进程插入就绪队列N Y N Y Y B N 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 20 页 - - - - - - - - - 5 四、实验要求1产生的各种随机数的取值范围加以限制,如所需的CPU 时间限制在120 之间。2进程数n 不要太大通常取48

7、个3使用动态数据结构4独立编程5至少三种调度算法6若有可能请在图形方式下,将PCB 的调度用图形成动画显示。五、实验报告主要包括实验预习和实验报告两部分。学生在上机做实验前,要根据教师布置的题目,对实验内容应作相应的预习,编写相关程序,准备好测试数据,进行静态检查后方可上机。实验结束后,根据实验过程和结果写出实验报告,主要内容包括对实验数据、实验中的特殊现象、实验操作的成败、实验的关键点等内容进行整理、解释、分析总结,回答思考题,提出实验结论或提出自己的看法等。严禁抄袭或拷贝他人的成果,自觉培养科学、严谨的作风。六、其它说明学生在实验过程中应遵守实验室的各项规章制度,注意人身和设备安全,配合和

8、服从实验室人员管理。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 20 页 - - - - - - - - - 6 实验二银行家算法实验学时: 2 学时实验类型:设计实验要求: 必修一、实验目的死锁会引起计算机工作僵死,因此操作系统中必须防止。本实验的目的在于让学生独立的使用高级语言编写和调试一个系统动态分配资源的简单模拟程序,了解死锁产生的条件和原因,并采用银行家算法有效地防止死锁的发生,以加深对课堂上所讲授的知识的理解。二、实验要求设计有 n 个进程共享m 个系统资

9、源的系统,进程可动态的申请和释放资源,系统按各进程的申请动态的分配资源。系统能显示各个进程申请和释放资源,以及系统动态分配资源的过程,便于用户观察和分析;三、数据结构1可利用资源向量Available ,它是一个含有m 个元素的数组,其中的每一个元素代表一类可利用的资源的数目,其初始值是系统中所配置的该类全部可用资源数目。其数值随该类资源的分配和回收而动态地改变。如果Available (j)=k,标是系统中现有Rj 类资源 k 个。2最大需求矩阵Max,这是一个nm 的矩阵,它定义了系统中n 个进程中的每一个进程对m 类资源的最大需求。如果Max(i,j)=k,表示进程i 需要 Rj 类资源

10、的最大数目为k。3分配矩阵Allocation ,这是一个nm 的矩阵,它定义了系统中的每类资源当前一分配到每一个进程的资源数。如果Allocation (i,j)=k,表示进程i 当前已经分到 Rj 类资源的数目为k。 Allocation i表示进程i 的分配向量, 有矩阵 Allocation名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 20 页 - - - - - - - - - 7 的第 i 行构成。4需求矩阵Need,这是一个 nm 的矩阵, 用以表示每个进

11、程还需要的各类资源的数目。如果Need(i, j)=k,表示进程i 还需要 Rj 类资源 k 个,才能完成其任务。 Need i表示进程i 的需求向量,由矩阵Need 的第 i 行构成。上述三个矩阵间存在关系:Need(i,j)=Max(i,j)-Allocation (i,j) ;四、银行家算法参考教材P96 五、安全性算法1设置两个向量。Work:它表示系统可提供给进程继续运行的各类资源数目,它包含m 个元素,开始执行安全性算法时,Work = Available 。Finish:它表示系统是否有足够的资源分配给进程,使之运行完成,开始Finish(I)=false;当有足够资源分配给进程

12、Pi 时,令 Finish( i)=true;2从进程集合中找到一个能满足下述条件的进程。Finish(i)= = false;Need iwork;如找到则执行步骤3;否则,执行步骤4;3当进程Pi 获得资源后,可顺利执行直到完成,并释放出分配给它的资源,故应执行Work = work + Allocation iFinish(i)=true;转向步骤2;4若所有进程的Finish( i)都为 true,则表示系统处于安全状态;否则,系统处于不安全状态。六、流程名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 -

13、- - - - - - 第 8 页,共 20 页 - - - - - - - - - 8 开 始输入资源数m, 及各类资源总数,初始化Available 向量输入进程数n,i=1 输入进程 i 的最大需求向量max。in max资源总数提 示 错 误重新输入i 加 1 任选一个进程作为当前进程输入该进程的资源请求量Request 调用银行家算法,及安全性算法,完成分配,或并给出提示该进程的 Need向量为 0 该进程已运行结束Need 矩阵为 0 所有进程运行都结束结 束N Y Y N N Y 初始化 need 矩阵N Y 名师资料总结 - - -精品资料欢迎下载 - - - - - - -

14、- - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 20 页 - - - - - - - - - 9 七、实验报告主要包括实验预习和实验报告两部分。学生在上机做实验前,要根据教师布置的题目,对实验内容应作相应的预习,编写相关程序,准备好测试数据,进行静态检查后方可上机。实验结束后,根据实验过程和结果写出实验报告,主要内容包括对实验数据、实验中的特殊现象、实验操作的成败、实验的关键点等内容进行整理、解释、分析总结,回答思考题,提出实验结论或提出自己的看法等。严禁抄袭或拷贝他人的成果,自觉培养科学、严谨的作风。八、其它说明学生在实验过程中应遵守实验

15、室的各项规章制度,注意人身和设备安全,配合和服从实验室人员管理。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 20 页 - - - - - - - - - 10 实验三多线程编程实验学时: 2 学时实验类型: 设计实验要求: 必修一、实验目的1、 熟悉多线程编程2、 熟悉使用信号量机制解决进程同步问题二、实验内容在 Windows 2000 环境下,创建一个包含n 个线程的控制台进程。用这n 个线程来表示n 个读者或写者。每个线程按相应测试数据文件的要求,进行读写操作

16、。请用信号量机制分别实现读者优先和写者优先的读者-写者问题。读者优先:如果一个读者申请进行读操作时已有另一读者正在进行读操作,则该读者可直接开始读操作。写者优先:如果一个读者申请进行读操作时已有另一写者在等待访问共享资源,则该读者必须等到没有写者处于等待状态后才能开始读操作。三、实验条件1、为每个学生提供一台具有WINDOWS 2000/NT/XP操作系统的计算机;2、实验机器要求安装Visual C+ 6.0 编程平台;3、实验要求一人一机。四、运行结果显示要求1、要求在每个线程创建、发出读写操作申请、开始读写操作和结束读写操作时分别显示一行提示信息,以确信所有处理都遵守相应的读写操作限制。

17、名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 11 页,共 20 页 - - - - - - - - - 11 2、测试数据文件格式:测试数据文件包括n 行测试数据,分别描述创建的n 个线程是读者还是写者,以及读写操作的开始时间和持续时间。每行测试数据包括四个字段,各字段间用空格分隔。第一字段为一个正整数,表示线程序号。第二字段表示相应线程角色,R 表示读者是, W 表示写者。第三字段为一个正数,表示读写操作的开始时间。线程创建后,延时相应时间(单位为秒)后发出对共享资源的读写申请

18、。第四字段为一个正数,表示读写操作的持续时间。当线程读写申请成功后,开始对共享资源的读写操作,该操作持续相应时间后结束,并释放共享资源。下面是一个测试数据文件的例子:1 R 3 5 2 W 4 5 3 R 5 2 4 R 6 5 3、若有可能请在图形方式下,将读、写者线程执行情况用图形动画显示五、实验报告主要包括实验预习和实验报告两部分。学生在上机做实验前,要根据教师布置的题目,对实验内容应作相应的预习,编写相关程序,准备好测试数据,进行静态检查后方可上机。实验结束后,根据实验过程和结果写出实验报告,主要内容包括对实验数据、实验中的特殊现象、实验操作的成败、实验的关键点等内容进行整理、解释、分

19、析总结,回答思考题,提出实验结论或提出自己的看法等。严禁抄袭或拷贝他人的成果,自觉培养科学、严谨的作风。六、其它说明学生在实验过程中应遵守实验室的各项规章制度,注意人身和设备安全,配合和服从实验室人员管理。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 12 页,共 20 页 - - - - - - - - - 12 实验四存储管理实验学时: 4 学时实验类型:设计实验要求: 必修一、实验目的存储管理的主要功能之一是合理地分配空间。请求页式管理是一种常用的虚拟存储管理技术。本实验的目

20、的是通过请求页式管理中页面置换算法模拟设计,了解虚拟存储技术的特点,掌握请求页式存储管理的页面置换算法。二、实验内容(1)通过计算不同算法的命中率比较算法的优劣。同时也考虑了用户内存容量对命中率的影响。页面失效次数为每次访问相应指令时,该指令所对应的页不在内存中的次数。在本实验中,假定页面大小为1k,用户虚存容量为32k,用户内存容量为 4 页到 32 页。(2)produce_addstream通过随机数产生一个指令序列,共320 条指令。A、指令的地址按下述原则生成:1) 50%的指令是顺序执行的2)25%的指令是均匀分布在前地址部分3) 25%的指令是均匀分布在后地址部分页地址流长度页面

21、失效次数命中率1名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 13 页,共 20 页 - - - - - - - - - 13 B、 具体的实施方法是:1)在0, 319的指令地址之间随机选取一起点m;2)顺序执行一条指令,即执行地址为m+1 的指令;3)在前地址 0,m+1 中随机选取一条指令并执行,该指令的地址为 m ;4)顺序执行一条指令,地址为m +1 的指令5)在后地址 m +2,319中随机选取一条指令并执行;6)重复上述步骤1)5) ,直到执行320 次指令C、 将指

22、令序列变换称为页地址流在用户虚存中, 按每 k 存放 10 条指令排列虚存地址,即 320 条指令在虚存中的存放方式为:第 0 条第 9 条指令为第0 页(对应虚存地址为0,9) ;第 10 条第 19 条指令为第1 页(对应虚存地址为10,19) ;。 。 。 。 。 。第 310 条第 319 条指令为第31 页(对应虚存地址为310,319) ;按以上方式,用户指令可组成32 页。(3)计算并输出下属算法在不同内存容量下的命中率。1)先进先出的算法(FIFO) ;2)最近最少使用算法(LRU ) ;3)最佳淘汰算法(OPT) ;4)最少访问页面算法(LFR) ;其中 3)和 4)为选择内

23、容名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 14 页,共 20 页 - - - - - - - - - 14 三、系统框图五、运行结果运行程序:开始生成地址流输入算法号S 1S4 形成地址页号用户内存空间msize=2 Msize32 OPT() FIFO() LRU() LFU() Msize 加 1 S=? 是否用其他算法继续结 束N Y 1 2 3 4 Y N 提示出错,重新输入名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - -

24、- - - - - 名师精心整理 - - - - - - - 第 15 页,共 20 页 - - - - - - - - - 15 a、 终端先显示:Start memory management. Producing address flow, wait for while, please. b、 地址流、地址页号流生成后,终端显示:There are algorithms in the program 1、 Optimization algorithm 2、 Least recently used algorithm 3、 First in first out algorithm 4、 L

25、east frequently used algorithm Select an algorithm number, please. 用户输入适当淘汰算法的号码,并按回车, 若是第一次选择, 输出相应的地址页号流。 然后输出该算法分别计算的用户内存从2k32k 时的命中率,若输入的号码不再14 中,则显示:there is not the algorithm in the program, 并重复 b。c、 输出结果后, 终端显示“ do you try again with anther algorithm(y/n)” 。若键入 y 则重复 b,否则结束。(一般讲四种算法都用过后结束,以便比

26、较)。六、运行结果讨论1、 比较各种算法的命中率2、分析当用户内存容量增加是对命中率的影响七、实验报告主要包括实验预习和实验报告两部分。学生在上机做实验前,要根据教师布置的题目,对实验内容应作相应的预习,编写相关程序,准备好测试数据,进行静态检查后方可上机。实验结束后,根据实验过程和结果写出实验报告,主要内容包括对实验数据、实验中的特殊现象、实验操作的成败、实验的关键点等内容进行整理、解释、分析总结,回答思考题,提出实验结论或提出自己的看法等。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - -

27、- 第 16 页,共 20 页 - - - - - - - - - 16 严禁抄袭或拷贝他人的成果,自觉培养科学、严谨的作风。八、其它说明学生在实验过程中应遵守实验室的各项规章制度,注意人身和设备安全,配合和服从实验室人员管理。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 17 页,共 20 页 - - - - - - - - - 17 实验五磁盘调度实验学时: 2 学时实验类型: 设计实验要求: 必修一、实验目的:磁盘是高速、大容量、旋转型、可直接存取的存储设备。它作为计算机系统

28、的辅助存储器,担负着繁重的输入输出工作,在现代计算机系统中往往同时会有若干个要求访问磁盘的输入输出要求。系统可采用一种策略,尽可能按最佳次序执行访问磁盘的请求。由于磁盘访问时间主要受寻道时间T 的影响,为此需要采用合适的寻道算法,以降低寻道时间。本实验要求学生模拟设计一个磁盘调度程序,观察调度程序的动态运行过程。通过实验让学生理解和掌握磁盘调度的职能。二、实验内容:模拟电梯调度算法,对磁盘进行移臂操作三、提示及要求:1、 假设磁盘只有一个盘面,并且磁盘是可移动头磁盘。2、 磁盘是可供多个进程共享的存储设备,但一个磁盘每个时刻只能为一个进程服务。当有进程在访问某个磁盘时,其它想访问该磁盘的进程必

29、须等待,直到磁盘一次工作结束。当有多个进程提出输入输出请求而处于等待状态时,可用电梯调度算法从若干个等待访问者中选择一个进程,让它访问磁盘。为此设置“驱动调度”进程。3、 由于磁盘与处理器是并行工作的,所以当磁盘在为一个进程服务时,占有处理器的其它进程可以提出使用磁盘(这里我们只要求访问磁道),即动态申请访问磁道,为此设置“接受请求”进程。4、 为了模拟以上两个进程的执行,可以考虑使用随机数来确定二者的允许顺名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 18 页,共 20 页 -

30、- - - - - - - - 18 序,程序结构图参考附图:5、 “接受请求”进程建立一张“进程请求I/O”表,指出等待访问磁盘的进程要求访问的磁道,表的格式如下:进程名要求访问的磁道号6、“磁盘调度”的功能是查“请求I/O”表,当有等待访问的进程时,按电梯调度算法 (SCAN 算法)从中选择一个等待访问的进程,按其指定的要求访问磁道。 SCAN 算法参考课本第九章。算法模拟框图略。7、 附图中的“初始化”工作包括:初始化“请求I/O”表,设置置 当前移臂方向;当前磁道号 。并且假设程序运行前“请求 I/O”表中已有若干进程(48 个)申请访问相应磁道。四、实验报告:1、 实验题目。2、 程

31、序中用到的数据结构及其说明。3、 打印源程序并附注释。4、 实验结果内容如下:打印“请求I/O”表,当前磁道号,移臂方向,被选中的进程名和其要求访问的磁道,看是否体现了电梯调度(SCAN )算法。5、 体会与问题。五、附图:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 19 页,共 20 页 - - - - - - - - - 19 六、实验报告主要包括实验预习和实验报告两部分。学生在上机做实验前,要根据教师布置的题目,对实验内容应作相应的预习,编写相关程序,准备好测试数据,进行静

32、态检查后方可上机。实验结束后,根据实验过程和结果写出实验报告,主要内容包括对实验数据、实验中的特殊现象、实验操作的成败、实验的关键点等内容进行整理、解释、分析总结,回答思考题,提出实验结论或提出自己的看法等。严禁抄袭或拷贝他人的成果,自觉培养科学、严谨的作风。七、其它说明学生在实验过程中应遵守实验室的各项规章制度,注意人身和设备安全,配合和服从实验室人员管理。开始初始化磁盘调度随机数 1/2 继续?接受请求输入在 0,1区间内的随机数结束名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 20 页,共 20 页 - - - - - - - - -

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

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁