1 / 21
文档名称:

FAT文件系统_操作系统课程设计实验报告.doc

格式:doc   页数:21
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

FAT文件系统_操作系统课程设计实验报告.doc

上传人:DOC KING 2012/6/4 文件大小:0 KB

下载得到文件列表

FAT文件系统_操作系统课程设计实验报告.doc

文档介绍

文档介绍:操作系统课程设计
设计任务:模拟OS文件系统
在任一OS(Window或者Dos;也可以是在Linux下,但要求能将结果演示给老师看)下,建立一个大文件,把它假象成一张盘,在其中实现一个简单的模拟OS文件系统。
1、在现有机器硬盘上开辟10M(共10000个盘块,每盘块大小为1k)的硬盘空间(),作为设定的硬盘空间。
2、编写一管理程序SDisk,对此空间进行管理,以模拟OS文件系统,要求:
⑴、盘块大小1k
⑵、空闲盘块的管理:采用位示图法
⑶、文件空间管理:采用FAT(文件分配表),每个盘块号占2个字节
⑷、目录项管理:
①、每个目录项占用32字节,其中前8个字节(0-7)为文件名,之后跟3个字节(8-10)的扩展名,26-27字节,存放文件的第一个盘块号,最后四个字节(28-31),存放文件长度(如果目录项对应的是下一级子目录(文件),其文件长度部分为0)
②、目录按文件方式管理,每个目录仅用一个盘块(即1k,最多装32个目录项)
③、第0个目录项为本目录,即“.”,第0个字节为“.”,即0x2E,第26-27字节指明本目录所在盘块。
④、第1个目录项为父目录,即“..”,第0,1个字节为“..”即0x2E,0x2E,第26-27字节指明父目录所在盘块。
⑤、每个目录实际能放下文件或子目录30项。
⑸、文件系统空间分配:
①、第0个盘块(1k)存放磁盘信息(可以设定为格式说明“FAT32”、盘块大小,盘块数等内容)
②、第1个盘块起,至125盘块,共125个盘块(125k)存放FAT内容
③、第126、127(2个)盘块,存放位示图
④、从第128盘块至10000盘块,皆为数据(区)盘块,其逻辑编号从0开始,至9872号数据盘块,即第0数据盘块为128号盘块,第1数据盘块为129号盘块,…
⑤、第0数据盘块(即128号盘块),存放根目录(同样只用一个盘块作根目录),由于第0、1目录项为“.”(本目录), “..”(父目录),因此根目录下同样只能存放30个文件或目录,并且从第2个目录项开始。
⑥、文件或子目录数据,放在第1数据盘块及以后的数据盘块中,由用户按需要使用。
3、SDisk管理程序的功能要求如下:
⑴、正常情况下,显示等待命令输入符号#
⑵、改变目录命令:
#cd 目录名,改变当前工作目录,目录不存在时给出出错信息
#cd ..,返回上一级目录,如果是根目录,给出提示信息
⑶、生成新目录
#md 目录名,创建新目录(需要更改FAT内容和位示图内容)
⑷、删除目录
#rd 目录名,删除目录,如果目录不存在时给出出错信息(需要更改FAT内容和位示图内容)
⑸、显示目录
#dir,显示指定目录下或当前目录下的信息,包括文件名、扩展名、物理地址(文件或目录第一个盘块号)、文件长度、子目录
⑹、创建新文件
#CreateFile ,,创建一个目录项(fcb),根据文件长度和位示图中空闲盘块情况,分配足够多的连续盘块,给新文件(需要更改FAT内容和位示图内容)。
⑺、删除文件
#DelFile ,在文件所在的目录项中,将第一个字节变为0xE5,并同时修改FAT内容和位示图内容;如果文件不存在,给出出错信息
⑻、文件拷贝
#CopyFile 老文件,新文件,为新文件创建一个目录项,并将老文件内容复制到新文件中,并同时修改FAT内容和位示图内容
⑼、显示位示图内容
#ShowBitMP,将位示图内容(已有信息部分),显示在屏幕上(按十六进制)
⑽、显示FAT内容
#ShowFAT,将FAT内容(已有信息部分),显示在屏幕上(按十六进制)
4、程序的总体流程为:
⑴、输出提示符#,等待接受命令,分析键入的命令;
⑵、对合法的命令,执行相应的处理程序,否则输出错误信息,继续等待新命令
(1、请参考“”中,有关文件系统的规定;
2、请参考WinHex中,目录所显示的信息进行编程)
//关于FAT 和MAP表的解释
//用bitset库,做MAP的是否判断,因为作业要求从数据块从128位开始,所以bitset的前128位被置为-1,同样FAT表也是,其次,MAP表和FAT表同样是用数组方式做保存,这样就略过了是对具体地址的操作,从数组的下标很容易的定位,
关于对FAT表和MAP表的用法
当要用到数据块是,查询MAP表(因为只做比较查询即可),查询到的未用位置置1,然后在FAT表上进行相应记录,在本程序做出的规定是,当文件夹FAT表做-1,若是文件则按照FAT做对应的顺序记录,最后一块同样是-1

最近更新

2025年江西省南昌市单招职业倾向性考试模拟测.. 40页

2025年江西省景德镇市单招职业倾向性测试模拟.. 40页

2025年江西航空职业技术学院单招职业倾向性测.. 40页

2025年江西财经职业学院单招职业倾向性测试模.. 41页

2025年沙洲职业工学院单招职业倾向性测试模拟.. 39页

2025年沧州幼儿师范高等专科学校单招职业倾向.. 39页

2025年沧州航空职业学院单招职业倾向性测试模.. 40页

2025年河北劳动关系职业学院单招职业适应性测.. 40页

2025年河北工业职业技术大学单招职业适应性测.. 42页

2025年河北建材职业技术学院单招职业适应性测.. 38页

2025年河北旅游职业学院单招职业适应性测试题.. 42页

2025年河北省衡水市单招职业适应性考试模拟测.. 40页

2025年河北科技学院单招综合素质考试模拟测试.. 40页

2025年河北能源职业技术学院单招职业适应性考.. 41页

2025年河北轨道运输职业技术学院单招职业适应.. 40页

2025年河北青年管理干部学院单招职业适应性测.. 40页

2025年河南交通职业技术学院单招职业适应性测.. 41页

2025年河南农业职业学院单招职业适应性考试模.. 39页

2025年河南地矿职业学院单招职业技能测试模拟.. 41页

2025年河南女子职业学院单招职业适应性考试模.. 41页

2026年上海电机学院单招职业技能测试模拟测试.. 41页

2025年河南工业职业技术学院单招职业技能测试.. 40页

2025年河南应用技术职业学院单招职业倾向性考.. 41页

2025年河南建筑职业技术学院单招职业适应性考.. 40页

2026年中国计量大学单招职测备考题库及答案1套.. 42页

2025年河南林业职业学院单招职业适应性测试模.. 39页

2025年河南测绘职业学院单招职业技能测试模拟.. 40页

2025年河南省周口市单招职业倾向性测试模拟测.. 41页

2025年重庆市《保安员证》考试题库含答案 39页

预防滑倒、绊倒及跌落专题培训课件 45页