WORD完美整理版
华南理工大学
“计算机操作系统”课程设计大作业
(含答案)
一、题目: 模拟UNIX文件系统的设计及实现
多用户、多目录的文件系统的设计------用VC或Delphi编程模拟文件系统的管理 二、目的
通过OS文件子系统的设计、增强OS设计的技巧,达到提高解决实际OS的设计能力的提高。 三、内容
多用户的多级目录的文件系统设计。
四、功能要求
1. 多用户 :usr1,usr2,usr3,……,usr8 (1-8个用户) 2. 多级目录:可有多级子目录; 3. 具有login (用户登录)
4. 系统初始化(分配内存空间,创建文件卷,初始化根目录) 5. 文件的创建: create 6. 文件的打开:open 7. 文件的读:read 8. 文件的写:write 9. 文件关闭:close 10. 删除文件:delete
11. 创建目录(建立子目录):mkdir 12. 改变当前目录:cd
13. 列出文件目录:dir(包括文件属性) 14. 删除目录:rmdir 15. 退出:logout
五、实现方法
该大作业是实现一个类似unix的文件系统,只需要实现上述功能要求中所列出的功能,代码中不能调用OS系统提供的与文件操作和磁盘操作有关的系统调用。设计提示:用内存模拟磁盘操作,对文件和目录的创建、删除、读写都用对内存的操作来模拟。文件的属性信息用内存数据结构保存;所有文件内容和目录信息保存在内存中。文件属性包括:文件名,所有者,创建时间,最后访问时间,文件大小,数据区指针或I-node指针等。当程序运行结束时回收内存,信息不需要保存到磁盘,下次重新运行程序时重头开始。
六、实验要求
每人完成一份大作业实验报告。报告分设计思想、数据定义、处理流程、源程序、运行结果截图、
范文范例 参考指导
WORD完美整理版
设计体会等部分。
1) 给出数据定义和详细说明; 2) 给出实现思想和设计流程; 3) 调试完成源程序; 4) 屏幕观察运行结果; 5) 总结自己的设计体会; 编程语言及操作系统平台不限。
七、提交内容
本大作业每个人必须单独完成。最后需提交的内容包括:源程序(关键代码需要注释说明)、可运行程序、算法思路及流程图、心得体会。大作业必须以WORD附件的形式提交。
大作业严禁抄袭。发现抄袭一律以不及格论。大作业内容要完整,一定要有算法思路、流程图、心得体会、运行输出信息截屏等内容,如果只提交源代码则大作业成绩记为不合格。
2017-3-20
目 录
1. 摘要 ........................................................................................................................................... 2 2. 问题描述 ................................................................................................................................... 2 3. 设计目的 ................................................................................................................................... 2 4. 设计要求 ..................................................................................................................................................... 2 5. 详细设计 ..................................................................................................................................................... 3
5.1界面设计 .............................................................................................................................. 3 5.1算法设计. ............................................................................................................................................... 3 6.
设计总结 .................................................................................................................................................. 4 致谢 ............................................................................................................................................................ 5 附录 ....................................................................................................................................... 36
7. 参考文献 .................................................................................................................................................... 4 8. 9.
范文范例 参考指导
WORD完美整理版
模拟UNIX文件系统的设计及实现
1. 课程设计内容
多用户的多级目录的文件系统设计。 2. 概述
UNIX采用树型目录结构,每个目录表称为一个目录文件。
一个目录文件是由目录项组成的。每个目录项包含16B,一个辅存磁盘块(512B)包含32个目录项。在目录项中,第1、2字节为相应文件的外存i节点号,是该文件的内部标识;后14B为文件名,是该文件的外部标识。所以,文件目录项记录了文件内、外部标识的对照关系。根据文件名可以找到辅存i节点号,由此便得到该文件的所有者、存取权、文件数据的地址健在等信息。UNIX的存储介质以512B为单位划分为块,从0开始直到最大容量并顺序加以编号就成了一个文件卷,也叫文件系统。UNIX中的文件系统磁盘存储区分配图如下:
0#
引导区 1# 管理区 2# … i节点区
K# K+1# K+2# K+3# 文件存储区
…
n# 本次课程设计是要实现一个简单的模拟UNIX文件系统。我们在内存中开辟一个虚拟磁盘空间(1MB)作为文件存储器,并将该虚拟文件系统保存到磁盘上(以一个文件的形式),以便下次可以再将它恢复到内存的虚拟磁盘空间中。文件存储空间的管理可采用位示图方法。
3. 课程设计任务及要求 3.1. 设计任务
多用户、多级目录结构文件系统的设计与实现。可以实现下列几条命令 login logout dir creat delete open close read write mkdir ch
用户登录 退出当前用户 列文件目录 创建文件 删除文件 打开文件 关闭文件 读文件 写文件 创建目录 改变文件目录
范文范例 参考指导
WORD完美整理版
rd format quit 3.2. 设计要求
删除目录树 格式化文件系统 退出文件系统
1) 多用户 :usr1,usr2,usr3,……,usr8 (1-8个用户) 2) 多级目录:可有多级子目录;
3) 具有login (用户登录) 4) 系统初始化(建文件卷、提供登录模块)
5) 文件的创建:create (用命令行来实现) 6) 文件的打开:open 7) 文件的读:read 8) 文件的写:write 9) 文件关闭:close 10) 删除文件:delete 11) 创建目录(建立子目录):mkdir 12) 改变当前目录:cd 13) 列出文件目录:dir 14) 退出:logout 新增加的功能: 15) 删除目录树:rd 16) 格式化文件系统:format 4. 算法及数据结构 4.1. 算法的总体思想
本课程设计是要求我们模拟UNIX文件系统功能设计一个虚拟文件系统,依据UNIX文件系统的特点,其设计思想是:
申请1M的内存空间来虚拟文件系统,将其以512B每块划分2048块,采用位示图管理文件系统的方法,利用其原理将第1块作为位图区(512B),共有对i节点区和数据块区分别建立位图;每个i节点占16B,每块有512/16=32个i节点,用2、3共两块作为i节点,总共有64个i节点,在位图区占用8B;其余2045块作为数据区(本课设要求只用到512块),在位图区占用接近256B(2045位)。 文件系统存储区分配图如下:
位图区
位图:用0表示未使用,1表示使用;
i节点:文件控制块(FCB),描述文件信息的一个数据结构; 数据区:存放用户数据,包括目录文件。
位示图用以反映整个存储空间的分配情况,由若干字节构成,每个字节中的每一位对应文件存储器中的一块,“1”状态表示相应块已占用,“0”状态表示该块为空闲。存储块
范文范例 参考指导
i节点区 数据区
相关推荐: