学士学位论文—-模拟磁盘文件管理系统.doc

学士学位论文—-模拟磁盘文件管理系统.doc

ID:11126720

大小:778.50 KB

页数:20页

时间:2018-07-10

学士学位论文—-模拟磁盘文件管理系统.doc_第1页
学士学位论文—-模拟磁盘文件管理系统.doc_第2页
学士学位论文—-模拟磁盘文件管理系统.doc_第3页
学士学位论文—-模拟磁盘文件管理系统.doc_第4页
学士学位论文—-模拟磁盘文件管理系统.doc_第5页
资源描述:

《学士学位论文—-模拟磁盘文件管理系统.doc》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、模拟磁盘文件管理系统一、任务描述模拟实现一个文件管理系统开发语言:C++、C语言、java开发工具:自选要求1、可以实现一下命令(以下命令至少实现5条):llogin用户登录ldir列文件目录lcreate创建文件ldelete删除文件lopen打开文件lclose关闭文件lcd改变目录lmkdir创建目录lrddir删除目录lhalt退出系统2、列目录要求列出文件名、物理地址、文件大小、读写标识二、任务完成情况⑴自定义磁盘文件管理的数据结构;⑵能够自由创建、修改、删除文件;⑶文件具有一定自定义的属性;⑷能够显示当前系统文件的

2、状态;(5)能够完成任务后退出系统。三、系统流程图与函数调用关系1、类和主要函数程序中定义了两个类:(1)classfile//文件类主要功能是对文件属性的定义,文件在虚拟磁盘地址块的定位。(2)classfdatabase//文件操作类主要功能是对创建、删除、修改等方法的具体实现。程序中的主要函数及说明:char*getname()//获取文件名intgettag()//获取删除标记intgetlength()//获取文件大小intgetblocknum()//磁盘块数intgetblocksum1()//磁盘块号的始点in

3、tgetblocksum2()//磁盘块号的终点voidsetname(charna[])//设置文件名voiddelwenjian(){tag=1;}//设置删除标记1:已删0:未删voidcreatfile(char*na,intL,intnum,ints1,ints2)//创建文件voiddeltefile(char*na){tag=1;strcpy(name,na);}//删除文件voiddisp()//输出文件信息intsearch(char*fname)//按文件名查找intcreatfile(char*na,in

4、tL,intnum,ints1,ints2)//创建文件时先查找是否存在intdeltefile(char*na)//删除文件时先查找是否存在2、函数流程图(1)整体流程图(2)创建文件流程图3、删除文件流程图4、输出文件流程图四、系统使用说明与界面设计(1)、课程设计的模板说明1、初始化,建立文件系统输入磁盘大小(G),每个盘块大小(M),自动建立位示图,位示图字长定为32位输出位示图的行数,以及行号、列号与磁盘块号的转换公式(都从0开始编号)。2、循环选择执行以下功能1、存储文件输入建立的文件名和文件大小,如果该文件名已经

5、存在,则输出不能建立的信息否则计算所需的磁盘块数为其分配足够多的磁盘块,并记录下来输出所占用的磁盘块号2、删除文件输入要删除的文件名,如果该文件名不存在,则输出删除错误信息,否则收回该文件所占用的磁盘块删除该文件名3、显示位示图情况显示位示图的情况显示剩余磁盘块的数目4、显示文件列表显示文件名,文件大小,占用的磁盘块数目和磁盘块号这样,初始化,建立文件系统完成。运行结果:(3)程序再输出位示图的剩余盘块数,行数,以及行号、列号与磁盘块号的转换公式(行列皆从0开始编号);2、选择执行:存储文件,删除文件,显示位示图情况,显示文件

6、列表显示文件系统管理列表,并提示输入信息1——4。用户输入文件操作命令1(存储文件),2(删除文件)、3(显示位示图情况)、4(显示文件列表);格式如下:键入1,创建文件名为fname,大小为L(MB)的文件;键入2,删除文件名为fname的文件;键入3,显示位示图情况;键入4,显示所有文件信息。运行结果:(2)、存储文件建立文件名为jike大小为200(MB)的文件:再建立文件名为wo大小为20(MB)的文件后显示文件列表:显示位示图情况:(3)、删除文件输入要删除的文件名,如果该文件名不存在,则输出删除错误信息,否则收回该

7、文件所占用的磁盘块,删除该文件名文件名不存在时:成功删除jike文件:显示删除后剩余磁盘块的数目:(4)、退出系统五、结论与体会在本次课程设计刚刚开始时,不知道怎么设计。后来认真阅读课本有关的知识,知道怎样设计才方便文件操作。知道怎样设计后,写程序时也遇到很多的障碍,特别是出错处理。此时深感自己编程能力的不足,经过多次修改,终于设计好了该设计。自己通过查找资料、复习课本、编程调试,写实验报告等环节,进一步掌握了以前学到的知识,并且还对操作系统应用有了更深入的认识与掌握。通过该课程设计,使我们更了解了课本知识,巩固了课本知识,同

8、时也使我们的编程能力有了一定的提高,我认实到学好计算机要重视实践操作,不仅仅是学习c++语言,还是其它的语言,以及其它的计算机方面的知识都要重在实践,所以后在学习过程中,我会更加注视实践操作,使自己便好地学好计算机。六、附录出现源代码#include#

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。