《2022年《操作系统》实验指导书 2.pdf》由会员分享,可在线阅读,更多相关《2022年《操作系统》实验指导书 2.pdf(8页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、操作系统实验指导书(适用于计科、网络工程、软件工程、信计专业)计算机科学与技术学院2010-5 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 8 页 - - - - - - - - - 目录前言 . 3 实验一、进程管理与进程同步 . 4 实验二、存储器管理 . 6 实验三、磁盘调度算法的设计 . 7 实验四、文件系统原理与模拟实现 . 8 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 -
2、 - - - - - - 第 2 页,共 8 页 - - - - - - - - - 前言本课程将系统学习操作系统的基本概念和常用算法以及其发展情况和应用情况。通过本课程的学习,学生应达到如下要求:1、加深理解操作系统原理。2、熟悉操作系统的常用算法并完成算法的程序设计。 3、理解当前操作系统的应用前景和新的进展。本课程主要讲解操作系统的实现原理,如进程管理、进程同步、存储器管理、 设备管理和文件系统等。 要求学生理解操作系统的基本原理并完成其中多种典型的操作系统的算法的模拟序设计。学生可以采用任何一种自己熟悉的编程语言完成算法的程序设计,如 C/C+、Delphi、VB、VC、C#等。名师资
3、料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 8 页 - - - - - - - - - 实验一、进程管理与进程同步实验目的 :了解进程管理的实现方法,理解和掌握处理进程同步问题的方法。实验内容:实现银行家算法、进程调度过程的模拟、读者-写者问题的写者优先算法。实验步骤:理解安全性算法和银行家算法的核心机制:针对 3 类资源、 5 个进程的情况,设计相应的数据结构,分别表示每个进程占用各类资源的情况;编程实现安全性算法函数, 编制主函数,动态输入资源的占用情况,进程的资源申请
4、,调用安全性函数,实现银行家算法;测试:输入可分配和不可分配的请求,测试系统的正确性。理解进程的三状态调度过程,及各状态间的转换关系;模拟若干个进程的运行过程,将其存入进程文件中。如:进程1:运行5 秒后有3 秒的I/O 操作,之后有10 秒的运行,结束。可以写成:” p1:r5,io3,r3 e;”;编程实现调度算法函数,定义时间片大小和并发进程个数,不断从进程文件中读出进程信息,模拟进程的运行及调度过程;测试:针对进程文件里面的数据为正常、缺项、格式不正确等各种情况,检测程序的执行结果。设计读者 -写者问题的写者优先算法;学习 Windows 平台下信号量的API 函数的使用;编制读写进程
5、的模拟信息文件,里面包含多个读写进程的运行描述:如 0 秒到达读进程 1,读 5 秒结束; 1 秒到达写进程 2,写 3 秒结束; 2秒到达读进程 3,读 4 秒结束。可以写为:0:1,r,5; 1:2,w,3; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 8 页 - - - - - - - - - 2:3,r,4; 编制读者 -写者问题的写者优先算法,从进程模拟信息文件中取出进程信息,按要求启动对应的进程模拟程序,决定出读者 /写者进程的运行次序。测试:针对进程模拟
6、信息文件里面的数据为正常、缺项、格式不正确等各种情况,检测程序的执行结果。实验结果 :银行家算法程序提供一个用户界面,可以在上边发出资源申请命令,系统应能给出是否可以接受申请,并且有结论输出;进程调度模拟程序根据一个进程调度文件,模拟进程的各种调度过程,用适合的表达方式表示出来。写者优先同步控制程序根据一个读写进程模拟信息文件,按照写者优先同步控制过程,用适合的表达方式表示出各读写进程的执行次序。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 8 页 - - - - -
7、- - - - 实验二、存储器管理实验目的:理解各类置换算法的原理和虚拟存储器管理的方法。实验内容:编程实现 LRU 算法或 CLOCK/ 改进算法等置换算法 (二选一),模拟实现虚拟存储器的地址变换过程。实验步骤:理解 LRU 或 CLOCK 改进算法等置换算法;设计与算法相关的数据结构,如:LRU 的堆栈或 CLOCK 改进算法中的循环结构;按照最多 5 块的内存分配情况,编程实现所选算法,动态输入访问内存的块号序列,输出置换结果;测试:输入合法、非法的访问序列数据,检查程序的正确性和健壮性。理解虚拟存储器的地址变换过程;设计用于模拟快表、页表、地址变换所用的寄存器的数据结构;编制页表的初
8、始信息文件, 举例说明文件中具有的信息: 共有 5 块,每块的状态、在内存和外存的起始地址等。编程实现虚拟存储器地址变换算法程序,动态输入所要访问的逻辑地址,变换过程文字描述以及变换后的物理地址;测试:输入有效、无效地址,测试程序的正确性和错误处理能力。实验结果:置换算法程序提供内存访问序列的输入界面,输出正确的置换过程描述和置换结果;虚拟地址变换程序提供逻辑地址输入界面,形象地表示出变换成物理地址的过程与最后变换成的物理地址。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,
9、共 8 页 - - - - - - - - - 实验三、磁盘调度算法的设计实验目的:通过对磁盘调度算法的设计,深入理解提高磁盘访问速度的原理。实验内容:模拟实现磁盘调度算法:最短寻道时间优先(SSTF)和扫描( SCAN)算法。要求:可以对给出的任意的磁盘请求序列、计算平均寻道长度;要求可定制磁盘请求序列长度、磁头起始位置、磁头移动方向。测试:假设磁盘访问序列: 98,183,37,122,14,124,65,67;读写头起始位置: 53,方向:磁道增加的方向。98 183 37 122 14 124 65 67名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - -
10、- - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 8 页 - - - - - - - - - 实验四、文件系统原理与模拟实现实验目的:了解操作系统中文件系统的结构和管理过程,掌握经典的算法: 混合索引与成组链接法等方法。实验内容:编程模拟实现混合索引和成组链接法算法;实验步骤:模拟混合索引的原理;假设每个盘块 16 字节大小,每个盘块号占2 字节:设计支持混合索引算法的索引节点的数据结构;编程模拟实现混合索引算法。测试:输入一个文件的长度,给出模拟分配占用的磁盘块的情况;输入一个需要访问的地址,计算该地址所在的盘块号。模拟成组链接法的原理;设系统具有 7
11、 个可用磁盘块,每组3 块。编程模拟实现成组链接法。输入请求的磁盘块数,模拟成组链接分配;输入回收的磁盘块号,模拟成组链接回收。测试:输入请求的磁盘块数,给出分配后的链接情况。输入回收的磁盘块号,给出回收后的链接情况。将每 3 个盘块作为一组,最末一组盘块号为56,次末组为 24,第一组为 01,注意,最后一组的盘块数应为2,不应为 3,其盘块号分别记入其前一组的 S.free(1)S.free(2), 而在 S.free(0)中则存放“ 0” ,作为空闲盘块链的结束标志。 因为这是指可供使用的空闲盘块。其编号应为 12,0 号放空闲盘块链的结尾标志。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 8 页 - - - - - - - - -