操作系统课程设计-文件系统的设计与实现(编辑修改稿)内容摘要:

图 显示文件内容 显示文件内容是,先列出所有文件的清单,用户可以选择一个文件来进行查看其内容,通过输入文件名,文件扩展名来确认要查看的文件,接下来判断文件是否存在,若不存在则显示“不存在此文件“,若存在该文件,则通过输出语句输出该文件的内容。 内蒙古工业大学操作系统课程设计 7 复制文件 这个功能块通过 void CopyFile()函数实现,先列出系统现有的文件,接下来用户输入要复制的文件名与文件扩展名,确认该文件存在后,可以输入目标文件与目标文件扩展名,利用文件控制块 FCB 创建新的文件,与创建文件时的实现方法一样。 如下为复制文件的流程图。 开 始 复 制显 示 现 有 的文 件p 1 = n u l l要 复 制 的 文 件不 存 在该 文 件 系 统 没 有 文件输 入 要 复 制 的 文 件名 与 扩 展 名判 断 该 文 件 是 否 存在建 立 新 的 F C B输 入 目 标 文 件 和 扩展 名( s t r c m p ( p 1 n a m e , n a m e ) = = 0 ) amp。 amp。 ( s t r c m p( p 1 e x t , e x t ) = = 0 )输 入 文 件 内 容 t e xs t r l e n ( t e x ) % 2n u m = s t r l e n ( t e x )/ 2n u m = s t r l e n ( t e x )/ 2 + 1文 件 复 制 成功在 最 后 一 个 盘 块的 第 二 个 位 置 设置 结 束 字 符将 文 件 中 的 内容 放 入 盘 块 Y NYN Y Y N 图 复制文件流程图 删除文件 这个功能通过 void DelFile()函数实现,通过输入要删除的文件名与文件扩展名来确定所要删除的文件。 利用指针 p2next=p1next 删除。 内蒙古工业大学操作系统课程设计 8 第四章 程序调试及运行情况 初始化系统 内蒙古工业大学操作系统课程设计 9 文件目录存放文件的名字,文件的扩展名,开始盘块号,所占用的盘块数目,文件的大小 内蒙古工业大学操作系统课程设计 10 内蒙古工业大学操作系统课程设计 11 通过显示文件目录,查看文件是否复制成功 内蒙古工业大学操作系统课程设计 12 通过显示文件目录,查看文件是否删除成功 出系统 内蒙古工业大学操作系统课程设计 13 第五章 课程设计出现的问题及解决的方法 ,最难一点就是数据结构的表示方法 ,这是一个我们在大二学了数据结构以来 ,用到数据结构最全的 ,在做这个课程设计时 ,我们要不时的翻书来察看我们所需的知识点 ,在做的过程中 ,会不时的在结构体上再添加有关的内容 ,因为在第一次写的时候 ,还没有完全考虑好整个结构。 ,没有考虑文件重名的情况,导致在显示文件内容 和删除文件时出现问题,因此在加入了判断文件重名的程序段后很好的解决了这一问题。 ,参照老师给出的程序段,利用 switch 语句,将每个功能块清晰的呈现出来。 4..由于所设计的每个盘块的大小为两个字节,当创建文件的大小为奇数个数时,容易出现文件内容丢失的现象,添加如下这样的语句后可以避免文件内容丢失num=(strlen(tex)%2)?(strlen(tex)/2+1):(strlen(tex)/2)。 在通过 运行 实验时,或多或少的出现了很多问题,这些都是在通过调试,确定错误的根源,最后把错 误都解决了。 ,建立一个系统文件(模拟盘),并对此进行盘块的划分,第一个盘块存放文件目录,第二盘块存放盘块位示图,自第三个盘块开始存放各具体文件的内容, 通过如下程序段实现文件系统的初始化。 void SystemInit() { for(int i=2。 i100。 i++) [i]=0。 //0 表示盘快可用 [0]=1。 //0 号盘块被目录占用 [1]=1。 //1 号盘块被位示图占用 =0。 } 内蒙古工业大学操作系统课程设计 14 第六章 课程设计的体会 与自我评价总结 课程设计是培养学生综合运用所学知识,发现,提出,分析,提出和解决实际问题,锻炼实践能力重要环节,是对学生实际工作能力的具体训练和考察过程,回顾起这次为期一个星期的操作系统课程设计,使我感慨颇多,从选题到分析,从理论到实践,在整整一个星期的日子里,可以说是苦多于甜,但是可以学到很多很多的东西,同时不仅可以巩固以前学过的知识,而且学到了很多在书本上所没有学过的知识。 通过这次课程设计使我懂得了理论和实践相结合是很重要 的,只有理论知识是远远不够的,只有把所学的理论知识同实践相结合起来,从理论中得出结论,才能真正学以致用,从而提高自己实际动手能力和独立思考的能力。 在设计中遇到的问题可以说是困难重重,期间遇到各种各样的问题,同时在设计过程中也发现了自己的不足之处,对以前所学过的知识理解不够深刻,掌握的不够牢固,通过这次课程设计之后,把以前所学过的知识重新温故了一遍。 通过这次为期一周的操作系统课程设计,我从中收获了很多,同时也发现了自己有很多的不足之处。 在做一个系统设计时,在编程之前应该全面细致的了解题 目,进行充分的理解,全面的设计,包括系统的每一个功能块都因做出详细的设计。 否则,一边编程一边设计容易。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。