二级文件系统开发1.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
二级文件系统开发1

二级文件系统开发 摘要:本程序为二级文件系统,同时实现基本的功能。用户通过本文件系统所提供的系统调用实现对文件的操作。最基本文件操作用:创建文件、上出文件、读文件、写文件。本文件系统可分为三个层次,其最底层是对象及其属性;中间层是对对象进行操纵和管理的软件集合;最高层是文件系统提供给拥护的接口。本程序基本实现功能如用户登陆、列举文件目录、创建/删除文件、创建/删除子目录等。 关键字:Windows、FAT、簇、文件、创建、删除 引言 本程序实现功能低级格式化、高级格式化、新建目录、删除目录、新建文件、删除文件等操作。在APP构造?dirent?和对metadata?进行操作,使用USER_INFO。 一、系统开发相应的理论基础 文件管理系统管理的对象有:①文件。它作为文件管理的直接对象。②目录。为了方便用户对文件的存取和检索,在文件系统中必须配置目录。对目录的组织和管理是方便用户的提高对文件存取速度的关键。③磁盘(磁带)存储空间。文件和目录必定占用存储空间,对这部分空间的有效管理,不仅能提高外存的利用率,而且能提高对文件的存取速度。 对对象操纵和管理的软件集合是文件管理系统的核心部分。文件系统的功能大多是在这一层实现的,其中包括:对文件存储的管理、对文件目录的管理、用于将文件的逻辑地址转换问物理地址的机制、对文件读和写的管理,以及对文件的共享和保护等功能。 用户对文件最基本的操作: (1) 创建文件。在常见一个新文件时,系统首先要为新文件分配必要的外存空间,并在文件系统的目录中,为之建立一个目录项。目录项中应记录新文件的文件名机器在外存的地址等属性。 (2) 删除文件。当已不再需要某文件时,可将它冲文件系统中删除。在删除时,系统应先从目录中找到要删除文件的目录项,使之成为空项,然后回收该文件艘占用的存储空间。 (3) 读文件。在读一个文件时,须在相应系统调用中给出文件名和应读入的内存目标地址。此时,系统同样要查找目录,找到指定的目录项,从中得到被读文件在外存中的地置。在目录项中,还有一个指针用于对文件的读/写。 (4) 写文件。在写一个文件时,须在相应系统调用中给出该文件名及该文件在内存中的(源)地址。为此,也同样须先查找目录,找到指定文件的目录项,在利用目录中的写指针进行写操作。 (5) 截断文件。如果一个文件的内容已经陈旧而需要全部更新文件的内容时,一种方法是将此文件删除,在重新创建一个新文件。但如果文件名及其属性均无改变时,则可采取另一种所谓的截断文件的方法,此即将原有文件的长度设置为0,或说放弃原有的内容。 (6) 设置文件的读/写位置。前述的文件读/写操作,都只提供了对文件顺序存取的手段,即每次都是从文件的始端读或写。设置文件读/写位置的操作,用于设置文件读/写指针的位置,以便每次读/写文件时,不是从其始端而是从所设置的位置开始操作。也正因如此,才能改变顺序存取为随机存取。 二、系统的相关说明及使用注意事项 (1)??本系统是模仿FAT16文件系统开发的,以16位表示一个簇,并在此基础上做了相应的修改。在这个开发文档中并不会介绍FAT16系统(除非必要),只会详细描述此系统的特点及不同之处。如果要了解本系统的内部组织结构,请先查看关于FAT16文件系统的相关资料。 (2)??本系统主要包括两部分:文件系统低层本身逻辑存储结构的设计,文件系统基于Windows平台存储管理外壳的设计。需注意的是,目标不是软件本身而是静态的磁盘空间(以一定的规则储存数据),Windows界面的管理外壳只是提供一个可视化的平台,从而方便用户管理。 (3)??磁盘中一个扇区有512字节,每个簇由1/4/8/16个扇区组成,在本系统中忽略扇区这个概念,定义一个簇为4K(4096字节)。 (4)??文件系统的空间为256MB?(?=?2^16?*?4096?B?) (5)??安装本系统的时候会产生一个大小为256?MB的文件,名为“FileSystem”,作为本系统的磁盘空间,所以在安装之前请先检查分区的磁盘的剩余空间是否大于256MB。所有对于本系统的测试都是在“FileSystem”中进行,不会设计此外的任何文件。 (6)??在Windows系统中有分区的概念,在本系统中所有的文件都建立在名为“system”的系统目录下。 (7)??与FAT16一样,每个文件(目录)都有一个文件目录项作为其标识。 (8)??每个文件目录项的长度为32字节。 (9)??每个文件目录下的子文件(包括子目录)的所有目录项所占有的空间不超过一个簇。即不超过MAX_DIR_ITEM_IN_PAGE?=?4KB?/?32B?=?128?个。 (10)??每个文件的大小理论上不受限制,只局限于文件系统的空间大小。 (11)??本系统的用户中没有用户组的区分,即所有的用户

文档评论(0)

ligennv1314 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档