【操作系统】7.目录

一、目录管理

1.对文件实施有效的管理,必须对它们加以妥善组织,

主要是两大操作:

  • 基本信息记录(FCB,目录项)
  • 方便检索、管理(目录操作)

2.FCB内容

1)在文件控制块中,通常含有以下三类信息。

a.基本信息类

包括文件名,文件物理位置,文件逻辑结构,文件的物理结构。

b.存取控制信息类

c.使用信息类

2)文件物理位置

  • 对于连续文件:文件起始块号;
  • 对于链接文件:指向第一个物理块的指针;
  • 对于索引文件:索引表地址。

3.索引结点

1)索引结点的引入

  • 文件目录占越大量的盘块,需进行的磁盘读写开销越大。减少实际检索的信息量就减少移动磁头的开销,提高速度;
  • 目录一般是按名检索。而直到找到正确文件前,只关心文件名,不需要其它的文件描述信息,目录中这部分内容的调入不是必须的。
  • 所以:将文件名、文件具体信息分开,使文件描述信息单独形成一个索引结点。

2)

3.目录结构

1)目前常用的目录结构形式有

  • 单级目录
  • 两级目录
  • 多级目录

2)单级目录结构

a.每建立一个新文件:

  • 先检索所有的目录项,保证文件名唯一。
  • 获得一空白目录项,填入相关信息,修改状态位(表明每个目录项是否空闲)。

b.删除一个文件:

  • 找到对应目录项,回收文件所占用空间
  • 清除目录项

优点:简单、能实现目录管理的基本功能——按名存取。

缺点:

  • 文件检索时需搜遍整个目录文件,范围大速度慢。
  • 不允许重名。名字过多难于记忆,对于多用户环境重名难以避免。
  • 不便于实现文件共享因为不能重名,不同用户使用的共享文件必须不同名字,标识哪些用户共享文件也不方便),一般只适用单机环境。

3)两级目录结构

  • 为每一个用户建立一个单独的用户文件目录UFDUFD由用户所有文件的文件控制块组成。
  • 系统建立一个主文件目录MFDMFD中每个用户目录文件都占有一个目录项,其中包括用户名和指向UFD的指针。

 两级目录的特点:

  • 提高了检索目录的速度。
  • 在不同的目录中可重名。
  • 不同用户还可以使用相同/不同的文件名来访问系统中的同一个共享文件。 

4)多级目录结构

  • 适用于较大的文件系统管理。又称为树状目录(tree-like)
  • 在文件数目较多时,便于系统和用户将文件分散管理。

 4.目录查询技术 

1)用户要访问一个已存文件

  • 目录数据调入内存;
  • 按名检索:系统利用提供的文件名对目录(根据目录层次,需要做的检索次数也不同)进行查询
  • 找该文件控制块
  • 读FCB或对应索引结点;
  • 从文件物理地址换算出文件在磁盘上的物理位置;
  • 最后通过磁盘驱动程序,将所需文件读入内存。

2)目录查询方式:线性检索法和Hash方法。  

a.线 性检索法 又称为顺序检索法。

  • 单级目录中 用户提供文件名,顺序查找文件目录。
  • 树型目录中 用户提供路径名,如/user/ast/mbox
  • 对多级目录进行逐层查找。 

二、文件共享与保护

 1.文件共享方式  

  • 索引结点
  • 符号链

2.索引结点法

a.基本FCB法:

  • 名+详细信息。
  • 直接在文件目录中包含文件的物理地址,该方法实现的共享不适用文件动态变化。一个用户对文件的修改(如物理块号增加),对其他用户不可见,共享文件的FCB信息记录同步更新困难。

b.文件名+索引结点指针。

  • 一个用户修改指针指向地址里的内容,指针不变,其他用户通过指针总能感知索引结点中的最新内容
  • 索引结点中增加count计数
  • 主人删除操作问题:

           删,共享用户访问错误;不删,计费问题。   

3.符号链法

  • 创建一个link类型的文件:文件名+共享文件路径”(类似快捷方式)
  • 文件主人删除文件,共享者只会出现找不到文件错误。不会发生共享文件删除后出现悬空指针的情况。
  • 该方法适用于网络文件共享,但根据路径检索共享文件的目标位置增加了访问开销,link文件独占索引结点也耗费一定的空间。

4.磁盘容 错:防止磁盘故障造成的文件不安全

1)SFT I:磁盘表面故障

  • 双目录、双文件分配表(空间冗余)
  • 写后读校验、热修复重定向(时间操作冗余)

2)SFT II:磁盘驱动器、控制器故障

  • 驱动器故障:磁盘镜像
  • 控制器故障:磁盘双工——并行控制器,分离搜索加快读取 

3)SFT III:高级容错技术

  • 双机热备份
  • 双机互备份
  • 公用磁盘模式

三、重点知识理解

 1.存放在磁盘上的文件访问顺序如何:既可随机访问,又可顺序访问。

2.操作系统中对信息进行管理的部分叫:文件系统

3.文件系统是:文件、管理文件的软件及数据结构的总体。

4.从用户角度看,文件系统的主要目的是:实现对文件的按名存取。

5.按文件的逻辑结构将文件分为两大类:记录式文件和流式文件。

6.使用位示图(20行、30列)表示空闲盘块状态。当分配的盘块号为132号时,其在位示图中的行、列数为(行为0-19、列为0-29,首盘块号为1411。当释放的盘块号为318时,其在位示图中的行、列数为:

B=i*30+j+1;  b-1=i*30+j

i=b-1 div 30=10;mod= j=17

7.为了解决不同用户的文件“命名冲突”问题,通常在文件系统中采用:多级目录结构。 

猜你喜欢

转载自blog.csdn.net/lml11111/article/details/84573001
今日推荐