操作系统课程设计题目
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课程设计任务书
一、课程设计目的
《计算机操作系统》课程设计是计算机类专业的集中实践性环节之一,是学习完《计算机操作系统》课程后进行的一次全面的综合练习。其目的在于加深对操作系统课程的理解,使学生更好地掌握操作系统的基本概念、基本原理、及基本功能,理解操作系统在计算机系统中的作用、地位和特点,具有分析实际操作系统,设计、构造和开发现代操作系统的基本能力,为今后从事的各种实际工作,如设计、分析和改进各种系统软件和应用软件提供必要的软件理论基础。
二、课程设计内容及要求
课程设计要求:
每位同学从下述设计任务中任选一个任务完成,上机验收运行结果,现场提问,并提交所完成该任务的课程设计报告。
实验要求:
1)上机前认真使用C语言编写好程序,采用Visual C++6.0作为编译环境;
2)上机时独立调试程序
3)上机验收运行结果,现场提问
4)根据具体任务要求,提交课程设计实验报告,报告内容包括:课程设计目的、内容、基本原理、模块划分、数据结构、算法设计、程序流程图(包括主程序流程图、模块详细设计流程图等)、以及算法源码(必须有相关注释,以有助于说明问题为宜,不得全盘打印而不加任何注释)、心得体会等。
设计内容一页式虚拟存储管理页面置换算法
1.目的和要求
在熟练掌握计算机虚拟存储技术的原理的基础上,利用一种程序设计语言模拟实现几种置换算法,一方面加深对原理的理解,另一方面提高学生通过编程根据已有原理解决实际问题的能力,为学生将来进行系统软件开发和针对实际问题提出高效的软件解决方案打下基础
2.实验内容
阅读教材《计算机操作系统》,掌握存储器管理相关概念和原理。
模拟实现页式虚拟存储管理的三种页面置换算法(OPT、FIFO和LRU),并通过比较性能得出结论。
前提:
(1)页面分配采用固定分配局部置换。
(2)作业的页面走向和分得的物理块数预先指定。可以从键盘输入也可以从文件读入。
(3)置换算法的置换过程输出可以在显示器上也可以存放在文件中,但必须清晰可读,便于检验。
3.实验环境
Windows操作系统、VC++6.0、C语言
4.实验提示
(1)基础知识
存储管理是操作系统进行资源管理的一个重要功能。现代操作系统广泛采用虚
拟存储的技术对内存进行扩充。实现虚拟存储的一个主要技术手段就是将辅存和主存统一管理,在二者之间进行对换,从而形成物理上两级而逻辑上一级的存储管理系统。一个置换算法的好坏对这个逻辑上的单级虚存的性能起着极其重要的作用,而且会影响处理机的调度性能。
对于本任务规定的前提:页面分配采用固定分配局部置换,则置换发生的时机是作业已经将操作系统分配的固定数目的物理块全部用完且发生缺页的时候。此时必须要将已经装入内存的部分逻辑页面换出以便将所缺的页面调入内存。置换算法就是一个决定将内存中“哪一个”页面换出的算法。
(2)数据结构
要模拟实现某一个置换算法,有如下一些对象需要用相关的数据结构来描述:
●作业的页面走向(执行过程中对页面的访问顺序)。可以用数组也可以用字
符串。如果用数组,则页面走向的长度受数组长度限制,如果用字符串,
则需要将字符串进行解析,将字符串经过解析处理后变成一个页面的排列
顺序。考虑最佳置换算法(“向前看”)和其他置换算法(“向后看“)
的特点。
●页框(作业分得的物理块)。由于作业分得的物理块数在置换算法执行之前
已经确定,可以用一些比较简单的数据结构实现。在综合置换算法的原理,
可以灵活采用相应的数据结构,尽可能使程序的时间复杂度最低。如对于
FIFO,队列最合适,对于LRU,则数组和堆栈都比较合适,采用不同的数
据结构还要配合在数据结构上的相应操作才行。
(2)功能模块划分
大体上可以将整个程序的模块划分成如下几个部分:
1)主模块:主要是初始化、界面和模块调用。
2)页面走向输入模块。(从键盘读入数据结构或将页面走向写入文件)
3)置换算法模块。
* 判断模块。决定换出哪一块。每一种置换算法对应一种判断算法。
* 调整模块。根据判断模块的结果,调整作业分得物理块集合中逻辑页面的情况。
* 置换过程输出模块(在显示器上显示或写入文件)。该模块每发生一次置换,由置换算法模块调用一次。
*……………….
除此之外,有些反复执行的操作考虑用过程或函数实现。总而言之,整个程序应该结构清晰,界面友好,可读性好,易调试,易扩充,易维护。
设计内容二虚拟存储管理(请求分页存储管理)
1.目的和要求
存储管理的主要功能之一是合理的分配空间。请求页式管理是一种常用的虚拟存储管理技术。本实验的目的是:通过编写和调试请求页式存储管理中页面置换算法的模拟程序以加深对存储管理方案的理解,了解虚拟存储技术的特点,掌握请求页式存储管理的页面置换方法;通过编写和调试地址转换过程的模拟程序以加强对地址转换过程的了解。
2.实验内容
阅读教材《计算机操作系统》,掌握存储器管理相关概念和原理。
(1)用C语言实现对分页式存储管理中的硬件的地址转换和产生缺页中断。
(2)设计页表。
分页式虚拟存储系统是把作业的副本存放在磁盘上,当作业被选中时,可把作业的开始几页先装入主存且启动执行。为此,在为作业建立页表时,应说明哪些页已在主存,哪些页尚未装入主存,页表的格式为:
页号标志主存块号在磁盘上的位置
可根据页面置换算法的不同,页表构的内容可以作适当的增删。
(3)地址计算。
作业执行时,指令中的逻辑地址指出了参加运算的操作数存放的页号和单元