44 文件目录管理.pptVIP

  • 17
  • 0
  • 约2.6千字
  • 约 16页
  • 2016-09-16 发布于河南
  • 举报
44 文件目录管理

4.4 文件目录管理 4.4.1 文件目录概念 为实现“按名存取”,必须建立文件名与外存空间中的物理地址的对应关系,体现这种对应关系的数据结构称为文件目录。 把若干文件目录组织在一起,以文件的形式保存在外存上,以备后用,这就形成了目录文件。 每一个文件在文件目录中登记一项,作为文件系统建立和维护文件的清单。 每个文件的文件目录项又称文件控制块FCB(File Control Block),FCB一般应该包括以下内容: 4.4.2 文件目录结构 这里主要从逻辑角度即用户角度来讨论目录结构。 根据目录的结构,可以将目录分为: 单级目录、二级目录、多级层次目录、无环图结构目录、图状结构目录等。 1.单级目录 单级目录最为简单(如图4.14),在整个文件系统中仅建立和维护一张总的目录表,系统上的所有文件都在该表中占有一项。 当存取文件时,用户只要给出文件名,系统通过查找这个目录表,找到文件名相对应的项就可获得该文件的属性信息。 在通过访问权限验证后,就可以根据目录项中提供的文件物理地址对文件实施存取操作。 在建立文件时,只要在目录表中申请一个空闲项,并填入文件名及其相关属性信息即可。 同样,在删除文件时,只要把相应的目录项标记为空闲项,并回收空间即可。 2.二级目录 二级目录可以解决文件重名,即把系统中的目录分为一个主目录表(Master File Directory,MFD)和多个次目录表(User File Directory,UFD)(如图4.15)。 当使用文件时,用户必须给出用户名和文件名。 当增加新用户时,系统为其建立一个用户目录。当删除用户时,则可撤消其目录。 这种目录结构基本上克服了单级目录的缺点,并具有以下优点: 提高了文件检索速度。这是因为指明了用户名大大缩小了需要检索的文件数量。 部分地允许文件名重名。在不同的目录中,可以使用同一个文件名。 二级目录也有其缺点,如对同一用户,也不能有两个同名的文件存在。 3.多级层次目录 多级层次目录(也叫树结构目录)是二级目录的推广(如图4.16)。 在多级层次目录中,有一个根目录和许多分目录。分目录不但可以包含文件,而且还可以包含下一级的分目录。这样依次推广下去就形成了多级层次目录。 多级目录具有以下优点: 既可方便用户查找文件,又可以把不同类型和不同用途的文件分类。 允许文件重名。不但不同用户可以使用相同名称的文件,同一用户也可使用相同名称的文件。 利用多级层次结构关系,可以更方便地制定保护文件的存取权限,有利于文件的保护。 多级层次目录也有其缺点,如不能直接支持文件或目录的共享。 4.无环结构目录 无环结构目录是多级目录的推广。 多级层次目录不直接支持文件或目录的共享。 为了使文件或目录可以被不同的目录所共享,可以把多级目录的层次关系加以推广,形成无环结构目录。 在无环结构目录中,不同的目录可以共享一个文件或目录,而不是各自拥有文件或目录的拷贝(如图4.17)。 无环结构目录比树形目录更灵活,可以实现不同用户共享同一个文件,但实现比较复杂。 在无环结构目录中,有些问题需要仔细考虑。 5.图状结构目录 图状结构目录是在无环结构目录的基础上形成的一种目录(如图4.18)。 无环结构目录存在的一个问题是要保证目录结构中没有环。 如果有环,就会形成图状结构。在图状结构目录中通过link文件实现文件共享。当Zhao目录要共享Home目录时,只需在Zhao目录下创建一个link文件,该文件包含指向Home目录的指针即可。 在图状结构中,实现目录的遍历和文件的删除等操作时,可能会存在问题。 相对于无环结构目录,图状结构目录需要有一些额外的措施来解决上述问题,比如采用“垃圾收集”机制来解决文件的删除问题等。 4.4.3 文件目录操作 文件操作相对来说比较统一,而目录操作变化较大。这里介绍几种常用的目录操作: 创建目录:目录是多个文件的属性的集合,创建目录就是在外部存储介质中,创建一个目录文件以备存取文件属性信息。 删除目录:也就是从外部存储介质中,删除一个目录文件。通常而言,只有当目录为空时,才能删除。 检索目录:要实现用户对文件的按名存取,这就涉及到文件目录的检索。 打开目录:如要用的目录不在内存中,则需要打开目录,从外存上读入相应的目录文件。 关闭目录:当所用目录使用结束后,应关闭目录以释放内存空间。 目录实现的算法对整个文件系统的效率、性能和可靠性有很大的影响。下面我们讨论几个常用算法。 1.线性表算法 2.哈希表算法 3.其它算法 * ①有关文件存取控制的信息。 ②有关文件结构的信息。 ③有关文件

文档评论(0)

1亿VIP精品文档

相关文档