2022年操作系统课程设计模拟文件系统.docx
《2022年操作系统课程设计模拟文件系统.docx》由会员分享,可在线阅读,更多相关《2022年操作系统课程设计模拟文件系统.docx(45页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、操作系统课程设计模拟文件系统学专院:业:运算机科学技术运算机科学与技术(工)班级:计 10- 1 班姓名:曲艳波学号:202117020218指导老师:葛建梅2021 年 07 月 16 日操作系统原理课程设计任务书(运算机科学与技术专业10-1 )一、课程设计题目(任选一个题目)1. 模拟进程治理2. 模拟处理机调度3. 模拟储备器治理4. 模拟文件系统5. 模拟磁盘调度二、设计目地和要求1. 设计目地操作系统原理课程设计是网络工程专业实践性环节之一,是学习完操作系统原理课程后进行地一次较全面地综合练习.其目地在于加深对操作系统地理论、方法和基础学问地懂得,把握操作系统结构、实现机理和各种典
2、型算法,系统地明白操作系统地设计和实现思路,培育同学地系统设计才能,并明白操作系统地进展动向和趋势.2. 基本要求:1挑选课程设计题目中地一个课题,独立完成. 2良好地沟通和合作才能3充分运用前序课所学地软件工程、程序设计、数据结构等相关学问4充分运用调试和排错技术(5) 简洁测试驱动模块和桩模块地编写(6) 查阅相关资料,自学具体课题中涉及到地新学问.(7) 课题完成后必需按要求提交课程设计报告,格式规范,内容详实.三、设计内容及步骤1. 依据设计题目地要求,充分地分析和懂得问题,明确问题要求做什么.2. 依据实现地功能,划分出合理地模块,明确模块间地关系.3. 编程实现所设计地模块.4.
3、程序调试与测试.采纳自底向上,分模块进行,即先调试低层函数.能够娴熟把握调试工具地各种功能,设计测试数据确定疑点,通过修改程序来证明它或绕过它.调试正确后,仔细整理源程序及其注释,形成格式和风格良好地源程序清单和结果;5. 结果分析 .程序运行结果包括正确地输入及其输出结果和含有错误地输入及其输出结果.目录1. 课程设计地目地12. 课程设计地要求13. 需求分析13.1 问题描述13.2 数据结构13.2.1 类13.2.2 结构23.2.3 函数23.3 系统运行环境24. 概要设计34.1 创建文件操作34.2 删除文件操作34.3 查看文件块号45 具体设计45.1 创建文件45.2
4、删除文件75.3 查看文件块号106.总结12参考文献13附录151. 课程设计地目地把握模拟文件系统地设计方法,具备初步地独立分析和设计才能. 初步把握软件开发过程地问题分析、系统设计、程序编码、测试等基本方法和技能.提高综合运用所学地理论学问和方法以及独立分析和解决问题地才能.训练用系统地观点和软件开发地一般规范进行软件开发,培育软件工作者所应具备地科学地工作方法和作风. 理论联系实践提高运算机专业综合水平.2. 课程设计地要求将所要设计地文件系统确定化,并设计出该确定化地模拟文件系统程序,要求程序有效不显现死循环,具有实际应用意义. 按操作由键盘输入所要执行地命令地代号,并输入相应要求地
5、内容 . 依据命令执行,并输出结果.3. 需求分析3.1 问题描述模拟文件系统试验内容和步骤:建立一个用户接口,其功能包括能依据用户地挑选,运行相应地程序模块,实现诸如改名文件、删除文件、显示文件等功能.3.2 数据结构3.2.1 类class Cuser3.2.2 结构typedef struct UFD/储备文件信息char name10;int attribute;/ 文件属性int length;int a10;int *p1;/ 一级索引int *p2100;/ 二级索引struct UFD *next;/指向文件链表中此文件结点地下一个结点UFD;3.2.3 函数UFD *Fhea
6、d;/ 文件链表地头结点int dis_file;/ 显示文件所占外存块号int dele_fileUFD *f;/ 删除文件地具体实现部分int new_file;int open_file;int first_dele_file;/ 实现删除文件地前部分工作3.3 系统运行环境操作系统: Windows XP运行软件: Microsoft Visual C+ 6.04. 概要设计4.1 创建文件操作由于创建文件必需要有文件名,所以空路径和路径“”在此成为错误 . 而且正由于如此,在此模块中需要分解出文件名,再把不含文件名地路径传递给“查找模块”,其次,开头输入 2输入文件名,长度,属性NO
7、p-lengthlengthlength 10NONOYESYES采纳三级索引采纳二级索引采纳一级索引创建胜利完成其中涉及了创建文件地操作,它包括:在找到目录中地nextf中添加一项并把文件地指针指向目录,即给文件赋值等操作. 具体流程如 4-1-1所示:图 4-1-1创建文件流程图4.2 删除文件操作删除文件必需有文件名,所以不答应空路径或路径文“”在此模块中分解出文件名,对不含文件名地路径进行处理. 删除操作在找到上一级目录后,再找出上一级目录,将之后地指针向前移一位,文件被删除.4.3 查看文件块号文件地内存空间为1000 块,每当创建一个文件安排连续地储备块号给此文件,查看地时候先输入
8、要查询地文件名依据用户输入地文件名找到此文件和相应地块号.5 具体设计5.1 创建文件在创建文件文件时要考虑文件地大小是否满意当前磁盘地剩余空间,只有当期望创建文件地大小小于磁盘剩余空间才可创建. 具体实现程序:int Cuse:new_fileint i=0,j=0;UFD *p=0;p=new UFD;ifp=0cout内存空间已满,创建文件失败!endl ;return 1;cout请输入建立地文件地名称,长度,属性(0: 只读, 1: 读写) p-namep-lengthp-attribute;ifp-lengthdisk_emptycout作业太大,当前硬盘可用空间为:disk_em
9、ptyendl;delete p;return 0;fori=0;ilength&i10;i+ forj;jai=j;disk_blockj=1j+;break;p-p1=0 ;p-p2=0 ;ifp-length10/一级索引地实现p-p1=new int100;fori=10;ilength&i110;i+ forj;jp1i-10=j;disk_blockj=1;j+ ;break ;ifp-length110/二级索引地实现p-p2=new int100100;fori=110;ilength; i+ forj;jp2mk=j;disk_blockj=1;j+ ;break ;ifno
10、w=0p-next=Fhead ;Fhead=p;elsep-next=now-File_head;now-File_head=p;DIR *h=now ;whileh.=0h-length+=p-length;h=h-above ;cout 文件创建胜利! length;length+=p-length;return 1;具体调试界面如下图所示:图 5-1-1图 5-1-25.2 删除文件具体实现程序:int Cuse:first_dele_filechar temp10;cout请输入你要删除地文件名:temp;UFD *f=Fhead;UFD *above=0;ifnow.=0f=now
11、-File_head;whilef.=0if.strcmpf-name,temp break;above=f;f=f-next;iff=0cout此文件不存在! length;ifnow=0iff=FheadFhead=Fhead-next;elseabove-next=f-next;elseDIR *d=now;whiled.=0/修改删除文件后各级目录地大小d-length-=f-length;d=d-above;iff=now-File_head/删除文件结点now-File_head=now-File_head-next;elseabove-next=f-next;length-=f-
12、length;this-dele_filef;cout删除胜利 endl ;return 1;int Cuse:dele_fileUFD *fint i=0,m;fori=0;i10&ilength;i+m=f-ai;disk_blockm=0;iff-p1.=0fori=10;i110&ilength;i+m=f-p1i-10;disk_blockm=0;delete f-p1;iff-p2.=0fori=110;ilength;i+m=f-p2i-110/100i-110%100;disk_blockm=0;delete f-p2;delete f;f=0;return 1;具体调试如图
13、5-2-1 所示:图 5-2-15.3 查看文件块号具体实现程序:int Cuse:dis_fileint i;char n10;UFD *f=Fhead;ifnow.=0f=now-File_head;cout请输入你要查看地文件地名称:n;whilef.=0if.strcmpn,f-name break;f=f-next;iff=0cout当前目录下没有这个文件:endl ;return 0;cout此文件占用硬盘块号如下:endl ;fori=0;ilength&i10;i+coutsetw6ai;ifi+1%10=0coutendl;fori=10;ilength&i110;i+/显示
14、一级索引块号coutsetw6p1i-10;ifi+1%10=0coutendl;fori=110; ilength;i+/显示二级索引块号coutsetw6p2i-110/100i-110%100;ifi+1%10=0coutendl ;coutendl;return 1;具体调试如图 5-3-1 所示:图 5-3-16. 总结本次课程设计使知道了如何定义类来实现相应地功能,运用链表、指针等设计出了一个简洁有用地文件治理系统同时也使以前所学学问得到巩固. 操作系统是一门将硬件功能、程序设计语言、数据结构、算法、运算机体系结构、软件工程等运算机学问紧密结合在一起地学科,它将对我今后地学习和工作
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022 操作系统 课程设计 模拟 文件系统
限制150内