os文件系统的模拟设计

os文件系统的模拟设计

ID:18831081

大小:211.00 KB

页数:17页

时间:2018-09-21

os文件系统的模拟设计_第1页
os文件系统的模拟设计_第2页
os文件系统的模拟设计_第3页
os文件系统的模拟设计_第4页
os文件系统的模拟设计_第5页
资源描述:

《os文件系统的模拟设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、课程设计说明书No.17文件系统的模拟设计1.设计目的本课程设计是学习完“操作系统原理”课程后进行的一次全面的综合训练,通过课程设计,更好地掌握操作系统的原理及实现方法,加深对操作系统基础理论和重要算法的理解,加强学生的动手能力。2.开发语言C语言3.功能描述为Linux系统设计一个简单的二级文件系统。要求做到以下几点:1.可以实现下列几条命令:login用户登录dir列目录create创建文件delete删除文件open打开文件close关闭文件read读文件write写文件cd进出目录2.列

2、目录时要列出文件名,物理地址,保护码和文件长度3.源文件可以进行读写保护4.方案论证4.1.概要设计(1)在内存中开辟一个虚拟磁盘空间作为文件存储器,在其上实现一个多用户多目录的文件系统。(2)文件物理结构可采用显式链接或其他方法。沈阳大学课程设计说明书No.17(3)磁盘空闲空间的管理可选择位示图或其他方法。如果采用位示图来管理文件存储空间,并采用显式链接分配方式,则可以将位示图合并到FAT中。(4)文件目录结构采用多用户多级目录结构,每个目录项包含文件名、物理地址、长度等信息,还可以通过目录

3、项实现对文件的读和写的保护。(5)对文件或目录的操作采用windows系统的API函数来实现。(6)设计一个较实用的用户界面,方便用户使用。要求提供以下相关文件操作:用户登录、创建目录、删除目录、创建文件、删除文件、读文件、写文件、复制文件、移动文件、返回根目录、退出。功能结构图如1所示:沈阳大学课程设计说明书No.17开始format列目录选择操作退出停止登录改变目录创建文件创建目录t写文件关闭文件删除文件e打开文件ne结束图1功能结构图安装4.2.详细设计4.2.1显示列表函数和目录流程图如

4、图2所示:沈阳大学课程设计说明书No.17模拟文件系统创建目录删除目录创建文件删除文件读文件写文件复制文件移动文件返回根目录图2目录流程图4.2.2文件创建函数算法:查找当前目录下是否有同名文件,是则退出,否则让用户输入文本文件内容,以‘###’结束。申请inode空间(ialloc函数),申请硬盘block空间(balloc函数),申请失败则结束。将文件内容写入inode空间和block空间。修改当前目录的结构,修改inode位图,block位图,写入模拟硬盘。详细过程如流程图3所示:沈阳大学

5、课程设计说明书No.17开始k=1或k=2创建文件夹创建文件有同名文件夹有同名文件返回创建失败信息当前目录为空返回创建失败信息把节点连接到该目录下把节点连接到该目录下的最后一个子节点之后创建成功结束12YNNYYN图3详细流程图4.2.3打开文件函数对文件进行关闭操作,若此时文件不存在或处于读状态或写状态,则返回关闭失败信息;若此时文件处于空闲状态,则调用Close函数进行关闭操作。流程图如图4所示:沈阳大学课程设计说明书No.17开始打开文件文件是否存在?是文件存在则调用OpenFile函数打

6、开文件文件不存在则返回错误信息显示文件内容结束图4打开文件图4.2.4关闭文件系统函数对文件进行打开操作,若此时文件不存在或已处于打开状态或读状态或写状态,则返回打开失败信息;若此时文件处于空闲状态,则调用Open函数进行打开操作。流程图如图5所示:沈阳大学课程设计说明书No.17开始打开文件文件是否存在?是文件存在则调用CloseFile函数关闭开文件文件不存在则返回错误信息结束图5关闭文件流程图五.设计结果与分析程序结果如图6到图8所示:沈阳大学课程设计说明书No.17图6用户登录、创建文件

7、、列文件目录沈阳大学课程设计说明书No.17图7关闭文件和读文件沈阳大学课程设计说明书No.17图8撤销文件操作6.心得体会操作系统课程设计是本课程重要的实践教学环节。课程设计的目的,一方面使学生更透彻地理解操作系统的基本概念和原理,使之由抽象到具体;另一方面,通过课程设计加强学生的实验手段与实践技能,培养学生独立分析问题、解决问题、应用知识的能力和创新精神。与本课程的实验教学相比,课程设计独立设课,具有更多的学时,给学生更多自行设计、自主实验的机会,充分放手让学生真正培养学生的实践动手能力,全

8、面提高学生的综合素质。沈阳大学课程设计说明书No.17对于本次操作系统课程设,由于Linux比较陌生,刚起步阶段花了很大时间去查阅各种资料。当完成设计时,感觉掌握了以前学到的知识,并且还对操作系统应用有了更深入的认识。对二级文件系统也有了很好的了解,熟练C语言布局的使用,如何解决实现里面功能的各种问题。7.参考文献[1]汤小丹,计算机操作系统(第3版)[M],西安电子科技大学出版社,2007年7月:275-292[2]孟庆昌,C语言程序设计[M],人民邮电出版社,2006年4月:184-213[

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

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

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