内容纲要

文件概念

文件:是一段程序或数据的集合。为一组赋名的相关联字符流的集合,或者是相关联记录(一个有意义的信息单位)的集合。

文件管理:操作系统中负责管理和存取文件信息的软件机构。

文件系统:操作系统中与管理文件有关的软件和数据称为文件系统。它负责为用户建立、撤销、读写修改和复制文件,还负责完成对文件的按名存取和进行存取控制。

文件系统特点

  • 友好的用户接口,用户只对文件进行操作,而不管文件结构和存放的物理位置。
  • 对文件按名存取,对用户透明。
  • 某些文件可以被多个用户或进程所共享。
  • 文件系统大都使用磁盘、磁带和光盘等大容翟存储器作为存储介质,因此,可存储大量信息。

文件的分类

  • 按文件的性质和用途分为:系统文件、库文件、用户文件。
  • 按组织形式分为:普通文件、目录文件、特殊文件。
  • 按存取控制属性分:只执行文件、只读文件、读写文件

文件结构

文件组织结构

文件的逻辑结构

文件的逻辑结构:从用户的观点出发观察到的文件组织形式,用户可以直接处理,独立于文件的物理特性。

  • 流式文件指文件内的数据不组成记录,只是依次的一串信息集合,如字节流或字符流,它也可以看成是无结构的或只有一个记录的记录式文件,所以也称作无结构文件。
  • 记录式文件是一种有结构的文件,它是指文件中的数据由若干条定长或不定长的记录构成,每条记录又由若干数据项构成。

连续结构:一种把记录按生成的先后顺序连续排列的逻辑结构。

多重结构:如果把记录按关键字和记录名排列成行列式结构,则一个包含n个记录名、m(m<=n)个关键字的文件构成一个m * n.维行列式。其中,如果第i(l<=i<=m)行和第j(l<=j<=n)列所对应的位置上为1,则表示关键字k,在记录尺中;反之,则表示关键字K,不在记录凡中。另外,同一个关键字也可以同时属于不同的记录。

转置结构:每个队列中和关键字直接相连的只有一个记录。

顺序结构:把文件中的关键字按规定的顺序排列起来就形成了顺序结构文件。

记录的成组与分解:

  • 记录的成组:若干个逻辑记录合并成一组,写入一个块。
  • 每块中的逻辑记录的个数称块因子 。
  • 成组操作一般先在输出缓冲区内进行,凑满一块后才将缓冲区内的信息写到存储介质上。
  • 记录的分解:当存储介质上的一个物理记录读进输入缓冲区后,把逻辑记录从块中分离出来的操作叫记录的分解。

文件的物理结构

文件的物理结构:逻辑文件在物理存储空间中存放方法和组织关系,又称文件的存储结构。

连续结构:把一个逻辑上连续的文件信息存放在依次相邻的物理块中的组织形式。

串联结构:通过每个物理块上的链接指针将同属于一个文件的多个离散的盘块链结成一个链表的组织形式,实现了离散分配。这种外存的分配方式也叫链接分配。

索引结构:系统为每个文件建立一个索引表,集中记录该文件占用的盘块号。索引表可以直接存放在文件控制块FCB中,但是,大文件的索引表往往很大,所以大多数文件系统让索引表置于单独的物理块中且可驻留在磁盘的任意位置,文件控制块的“物理地址”字段只要保存该索引表所在的盘块号(即索引表地址)。

文件的存取方法:

  • 顺序存取法
  • 随机存取法(直接存取法)
  • 按关键字存取法

按关键字存取法算法:

  • 线性搜索法
  • 散列法
  • 二分搜索法

文件的存储设备

  • 顺序存储设备:只有在前面的物理块被存取过之后,才能存取后续的物理块的内容。(磁带)
  • 直接存取存储设备:允许文件系统直接存取磁盘上的任意物理块。为了存取一个特定的物理块,磁头将直接移动到所要求的位置上,而不需要像顺序存取那样事先存取其他的物理块。(磁盘)

文件存储空间管理

  • 空闲文件目录:把文件存储设备中的空闲块的块号统一放在一个称为空闲文件目录的物理块中。其中空闲文件目录的每个表项对应一个由多个空闲块构成的空闲区,它包括空闲块个数、空闲块号和第一个空闲块号等。
  • 空闲块链:把文件存储设备上的所有空闲块链接在一起,当申请者需要空闲块时,分配程序从链头开始摘取所需要的空闲块,然后调整链首指针。反之,当回收空闲块时,把释放的空闲块逐个插人链尾上。
  • 位示图:每一个磁盘块由1位(bit)来表示。如果该磁盘块是空闲的,这个位就置0;否则,就置1。

文件目录管理

  • 对大量文件实施有效的管理。即需要采用合理的数据结构记录好所有文件的属性信息,不同的组织方式将影响到目录的检索速度。
  • 实现“按名存取”。这是目录管理中最基本的功能,也是文件系统向用户提供的最基本的服务。
  • 提高对目录的检索速度。通过设计合理的目录文件组织形式和目录结构,都会提高目录的检索速度,从而提高文件的存取速度。
  • 支持文件共享和文件重名。

文件的组成

  • 文件说明:有时也叫文件控制块CFCB),它至少包括文件名、与文件名相对应的文件内部标识以及文件信息在文件存储设备上第一个物理块的地址(物理结构是边连续结构时)。另外,根据系统要求不同,它还包括关于文件逻辑结构、物理结构、存取控制和管理等的信息等。这里的管理信息主要指访问时间和记账信息等。
  • 文件体:指文件本身的信息,它可能是前面各节讨论的记录式文件或字符流式文件。

文件目录与目录文件:

  • 为了加快文件的查找速度,通常把FCB集中起来进行管理,文件控制块的有序集合称为文件目录,即一个文件控制块就是一个文件目录项。
  • 文件目录也是以文件的形式保存在外存上的,这就形成了目录文件。

目录文件的组织方式目录项的设计和FCB的存储组织方法。

  • FCB线性表
  • 索引节点
  • 哈希表组织

目录结构:

  • 单级目录
  • 二级目录
  • 多级目录

文件共享:

  • 绕道法;
  • 录级 链接法;
  • 基本文件目录表(BFD)。

文件的层次模型:

文件层次模型

  1. 用户接口
  2. 符号文件系统层
  3. 基本文件系统层
  4. 存取控制验证层
  5. 逻辑文件系统层
  6. 物理文件系统层
  7. 文件存储设备分配模块和设备策略模块
  8. 启动输入输出层
  9. 第7层和第8层是文件系统和设备管理程序的接口层
最后修改日期:2020年7月13日

作者

留言

撰写回覆或留言

发布留言必须填写的电子邮件地址不会公开。