欢迎来到天天文库
浏览记录
ID:14515418
大小:548.00 KB
页数:16页
时间:2018-07-29
《实验小组_《os操作系统实验四》----文件系统》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、北航计算机学院《Linux操作系统实验四》----Linux文件系统实现文档32060624OS实验小组《Linux操作系统实验四》:《linux文件系统》实现文档32060624Linux实验小组2021年6月23日星期三32060624王克(组长)32060518杜可斌32060621张劲32060532徐瑞一、实验目的2二、实验要求2三、理论准备21.fat12格式的磁盘的数据存放结构和格式22.由一个数的fat项簇号计算出它在fat项中的位置的方法:4四、重要的数据结构41.启动记录42.根目录项53.全局变量54.定义常量5五、文件操作函
2、数的实现61.函数fd_ls的实现62.函数fd_cd的实现83.函数fd_rm的实现10六、程序的运行12七、程序的测试13测试一: 查找子目录项,打印根目录。13测试二:转到dkb子目录14测试三:显示目录14测试四:删除盘内的filesys文件15八、实验总结15九、小组成员体会15l32060624王克15l32060518杜可斌16l32060532徐瑞16l32060621张劲16十、参考书籍16ITRunner@cse.buaa.edu.cn6/23/2021Page16of16北航计算机学院《Linux操作系统实验四》----Lin
3、ux文件系统实现文档32060624OS实验小组一、实验目的1.学习有关linux文件管理程序如何组织的知识,为简化的文件系统设计并实现一组目录操作。实验中使用软盘的fat12格式,设计一个程序可以对这种格式的磁盘进行一组目录操作。2.实验使用了部分linux的系统调用,比如说open()sleek()read()write()几个调用。通过此实验来对linux的文件系统的管理有进一步的理解。3.进一步熟悉虚拟文件系统,并对其实现机制有一个进一步的了解。二、实验要求1.设计并实现读取磁盘目录的目录列表功能,该函数格式为intfd_ls();该命令的
4、输入为:fd_ls2.设计并实现切换目录功能,由于对于路径的处理较繁琐,我们在这不处理路径,该函数的格式为:intfd_cd(char*directory);该命令输入为:fd_cddir_name或cd/或cd3.设计并实现一个删除文件的函数,该函数使用要删除的文件名(在当前目录中)作为参数,函数格式为:intfd_rm(char*name);该命令的输入为:fd_rm三、理论准备1.fat12格式的磁盘的数据存放结构和格式从上图,我们可以清楚地看出fat12的文件卷的逻辑结构,它包括启动记录,文件分配表,根目录区和数据区。a)启动记录简介在启动
5、记录中,我们可以通过下图来进一步了解:Byte偏移长度Sample含义003bytesEB3C90Jumpinstruction038bytesMSDOS5.0OEMNameintext制造商名称0B25bytes BIOS参数块2426bytes 扩展参数块3E448bytes 各种参数1FE2bytes0x55AAEndofsectormarkerb)文件分配表简介在启动记录后面就是fat项和它的副表,fat项及其副表具体结构见下图。ITRunner@cse.buaa.edu.cn6/23/2021Page16of16北航计算机学院《Linux
6、操作系统实验四》----Linux文件系统实现文档32060624OS实验小组从第一个扇区到第九个扇区是fat项存放的位置。磁盘有很多扇区,而文件存储在一个或几个扇区中,而且这些扇区不一定是连续的。我们通过fat项知道每个文件保存在哪个扇区中。一个fat项来对应一个扇区,一个使用3个字节,即在第一个扇区到第九个扇区中,每3个字节对应了一个扇区,这3个字节中的内容则表示他对应的簇的情况。比如说fat项存放的内容是00(十六进制),就表示他对应的簇还没有使用,若是e5(十六进制),则表示他对应的簇是用过,尤其是当他对应的簇是一个文件存放的第一个簇(该文
7、件占用了好几个簇),那么这个簇对应的内容就是这个文件存放的第二个簇的簇号码(这显示出了文件的链状结构).若是ff(十六进制),则表示他对应的簇是这个文件的最后一个簇.比如说上图中file1.txt第一个扇区对应的簇是2号簇,2号簇的内容是03,那么他表示file1.txt不止一个簇,他的第二个簇的簇号是03。以此类推,直到他的某个簇的内容是ff(十六进制),这到这里这个文件结束。同理file.txt占用了两个扇区,因此有两个对应的簇,file3.txt只有一个扇区(因为他第一个簇的内容是e5)。c)根目录区简介一般情况是一个文件夹有一个或几个扇区用
8、来存放给文件夹中的文件列表,列表中含有文件名,扩展名,时间,日期,和文件的系统属性,隐藏属性等。而文件夹列表的存储位置在根
此文档下载收益归作者所有