操作系统课程设计2013
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
操作系统课程设计
1、(难度系数3)模拟UNIX(linux)文件系统
[问题描述]
在任一OS下,建立一个大文件,把它假象成一张盘,在其中实现一个简单的模
拟UNIX文件系统。
[基本要求]
1).在现有机器硬盘上开辟20M的硬盘空间,作为设定的硬盘空间。
2).编写一管理程序对此空间进行管理,以模拟UNIX(或linux)文件系统,具体要求如下:
(1)要求盘块大小1k
正规文件
(2) i 结点文件类型目录文件
(共1byte) 块设备
管道文件。
物理地址(索引表)
共有13个表项,每表项2byte。
文件长度4byte。
联结计数1byte
(3)0号块超级块栈长度50
空闲盘块的管理:成组链接( UNIX)
或位示图法(Linux)
(4)每建一个目录,分配4个物理块
文件名14byte
(5)目录项信息
i 结点号2byte
(6)结构:0#:超级块
1#-20#号为目录区
20#-30#号索引节点区
(7)功能:1、初始化
2、建立文件(需给出文件名,文件长度)
3、建立子目录
4、打开文件(显示文件所占的盘块)
5、删除文件
6、删除目录
7、显示目录(即显示目录下的信息,包括文件、子目录等)
8、显示整个系统信息
2、模拟文件系统(难度系数2)
[问题描述]
在任一OS下,建立一个大文件,把它假象成一张盘,在其中实现一个简
单的小型文件系统。
[基本要求]
该小型文件系统没有子目录机制,文件连续分配,不考虑分区。
做一个简单的操作界面,提供五条简单的命令:显示文件名dir 、创建文件cf、拷贝文件copy、删除文件del , 文件改名rename 。
进一步增强:
上题中的文件系统功能:文件系统不连续分配,可以有子目录机制,(如两级子目录机制)。
3、设计一个请求页式存储管理方案。
(难度系数1)
并编写模拟程序实现之。
产生一个需要访问的指令地址流。
它是一系列需要访问的指令的地址。
为不失一般性,你可以适当地(用人工指定地方法或用随机数产生器)生成这个序列,使得 50%的指令是顺序执行的。
25%的指令均匀地散布在前地址部分,25%的地址是均匀地散布在后地址部分。
页面淘汰算法采用最佳,FIFO,LRU,LFU 等页面淘汰算法,并且在淘汰一页时,只将该页在页表中抹去。
而不再判断它是否被改写过,也不将它写回到辅存。
存储管理算法的流程图如下:
4、(1)设计一个固定式分区分配的存储管理方案,并模拟实现分区的分配和回收过程。
(难度系数1)
可以假定每个作业都是批处理作业,并且不允许动态申请内存。
为实现分区
的分配和回收,可以设定一个分区说明表,按照表中的有关信息进行分配,并根
据分区的分配和回收情况修改该表。
(2)设计一个可变式分区分配的存储管理方案。
并模拟实现分区的分配和回收
过程。
对分区的管理法可以是下面三种算法之一:
首次适应算法
循环首次适应算法
最佳适应算法
5、编写并调试一个段页式存储管理的地址转换的模拟程序。
(难度系数1)
首先设计好段表、页表,然后给出若干个有一定代表性的地址,通过查找段表
页表后得到转换的地址。
要求打印转换前的地址,相应的段表,页表条款及转换后的地址,以便检查。
选作:进程并发实现与观察(难度系数2)
[问题描述]
在Linux/UNIX/windows下编制一个程序,该程序通过建立子进程的方法,并发的分别
显示“高山流水”和“蓝天白云”。
[基本要求]
在Linux/UNIX/windows下编制一个程序,该程序通过建立子进程的方法,并发的分别
显示“高山流水”和“蓝天白云”。
并在“高山流水”和“蓝天白云”
前显示遍数,观察父子进程哪个先开始运行,及每次轮到运行时显示的遍数,并根据大致推
算出每个时间片的大小。
使用Ctrl+S暂停显示(Ctrl+Q恢复显示)或用|more 管道命令分页
显示。
用Ctrl+C 终止进程。
说明:
一、关于选题与评分标准
1、选题方法:由于时间较紧,课程设计可以分组完成(3人左右,选一人任小组长)
2、操作系统课程设计需要提交设计报告(打印稿)、源代码和可执行程序,评
分标准如下:
3、操作系统实验严禁抄袭,无论是不同小组之间还是与往届之间,一旦确认为
抄袭作品记为零分。
被抄袭的作品与抄袭作品的处理相同。
4、小组成员人数少的组,每人完成的工作较多,所以如果质量相同人数少的小
组得分应该高于人数多的组。
5、提交实验报告时,小组成员根据工作量进行排名(该排名作为最终成绩的依
据,题目难度系数与成绩成正比)。
6、答辩以小组为单位,随机检查。
二、课程设计报告内容
1、分析设计要求,给出解决方案(要说明设计实现所用的原理,采用的数据结
构)
2、画出程序的基本结构框图和流程图
3、对程序的每一部分要有详细的设计分析说明,程序执行的每个步骤要有具体
的提示内容或输出
4、源代码格式规范,注释不少于五分之一
5、设计合适的测试用例,对得到的运行结果要有分析
6、设计中遇到的问题,设计的心得体会
(1)你认为你完成的哪些比较好或比较出色;
(2)差距与局限,什么做的不太好或什么地方可以做的更好以待改进;
(3)从本作业得到的收获:对编写与调试过程中经验教训的总结;
(4)完成本题的其他方法或你的设想。
7、每个小组提交完整程序代码一份、每位同学交课程设计报告一份(重点在自己所做
部分)
提交的文档应以论文的格式书写,如封面、目录、摘要、关键词、总结、参
考文献与资料。
可以下载一篇期刊论文看其书写格式与顺序。
8、开发工具不限
三、课程设计封面及目录要求见下页
操作系统课程设计
学院:信息科学与工程学院
专业:
班级:
学号:
学生姓名:
指导教师:王永燕
2013 年3 月10 日
一、实验内容
二、数据结构设计
三、算法设计(总体设计及模块设计)
四、测试数据及程序运行情况
五、实验过程中出现的问题及解决方法。