第八章-文件系统

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

8.3.1 文件的物理结构
3.索引文件 ‫ ٭‬要求系统为每个文件建立一张索引表,表中每一栏目指 出文件信息所在的逻辑块号和与之对应的物理块号。索 引表的物理地址则由文件说明信息项给出。 ‫ ٭‬既可以满足文件动态增长的要求,又可以较为方便和迅 速地实现随机存取。因为有关逻辑块号和物理块号的信 息全部放在一个集中的索引表中,而不是分散在各个物 理块中。
对于记录式文件,由于记录长度既可以是固定的, 也可以是可变的,而且其长度不一定刚好等于其物 理块的长度,从而给由记录的逻辑地址到物理地址 的变换带来了额外负担。
8.3.1 文件的物理结构
1.连续文件(磁盘可采用) ‫ ٭‬一种最简单的物理文件结构,它把一个在逻辑上连续的 文件信息依次存放到物理块中。 ‫ ٭‬一个逻辑块号为0,1,2,3的文件依次存放在物理块10 , 11 , 12 , 13 中。
文件系统采用哪种存取方法和逻辑结构,与物理存 储介质有关。
8.3.1 文件的物理结构 文件的存储设备通常划分为若干个大小相等的物理 块。每块长为512字节或1024字节。 为了有效利用存储设备和便于系统管理,一般把文 件信息也划分为与物理存储设备的物理块大小相等 的逻辑块。以块作为分配和传送信息的基本单位。 对于字符流的无结构文件,每个物理块中存放长度 相等的文件信息(存储文件尾部信息的物理块除外)。
8.2.1
逻辑结构
‫( ٭‬2) 多重结构 ▪ 把记录按键和记录名排列成行列式结构,则一个包 含n个记录名、m个(m≤n)个键的文件构成一m*n维行 列式。其中,如果第i行和第j列所对应的位臵上为 1 ,则表示关键字Ki在记录Rj中;反之,则表示关 键字Ki不在记录Rj中。另外,同一个关键字也可以 同时属于不同的记录。
8.2.2
存取方法
‫ ٭‬随机存取法(直接存取):允许用户根据记录的编号来 存取文件的任一记录,或是根据存取命令把读写指针 移到欲读写处来读写。 ‫ ٭‬按关键字存取法:一种用在复杂文件系统,特别是数 据库管理系统中的存取方法。文件的存取是根据给定 的关键字或记录名进行的。按关键字存取法首先搜索 到要进行存取的记录的逻辑位臵,再将其转换到相应 的物理地址后进行存取。
▪ 某些文件可以被多个用户或进程所共享。 ▪ 多使用磁盘等大容量存储器作为存储介质,可存储大 量信息。
3.文件的分类 ‫ ٭‬按性质和用途分类: ▪ 系统文件:只允许用户通过系统调用来执行它们,而 不允许读写和修改。主要由操作系统核心、各种系统 应用程序和数据所组成。 ▪ 库文件:允许用户读取、执行,但不允许修改。主要 由各种标准子程序库组成。 ▪ 用户文件:用户委托文件系统保存的文件。只由文件 的所有者或所有者授权的用户才能使用。主要由源程 序、目标程序、用户数据库等组成。 ‫ ٭‬按组织形式分类 ▪ 普通文件:指组织格式为系统中所规定的最一般格式 的文件,如由字符流组成的文件。
8.2.1
逻辑结构
记录是一个具有特定意义的信息单位,它由该记录在文件 中的逻辑地址(相对位臵) 与记录名所对应的一组键、属性 及其属性值所组成。
图8.2 记录组成例
8.2.1
常用的记录式结构:4种
逻辑结构
‫( ٭‬1) 连续结构
▪ 把记录按照生成的先后顺序连续排列的逻辑结构。 ▪ 适用性强,可用于所有文件,且记录的排列顺序与 记录的内容无关。 ▪ 有利于记录的追加与变更。 ▪ 缺点:搜索性能较差。
▪ 目录文件:由文件的目录信息构成的特殊文件。该 文件的内容不是各种程序或应用数据,而是用来检 索普通文件的目录信息。
▪ 特殊文件:在UNIX系统中,所有的输入、输出设备 都被看作特殊文件。在使用形式上与普通文件相同, 如查找目录、存取操作等。但特殊文件的使用和设 备处理程序紧密相连。系统必须把对特殊文件的操 作转入到对不同的设备的操作。
一种较好的解决办法是采用间接索引(多重索引 ) ,即在 索引表所指的物理块中存放的不是文件信息,而是装有这些 信息的物理块地址。这样,如果一个物理块可装下n个物理 块地址,则经过一级间接索引,可寻址的文件长度将变为 n*n块。如果文件长度还是大于n*n块,还可以进行类似的扩 充,即二级间接索引。
2.文件与文件系统的概念 文件:一组赋名的相关联字符流的集合,或者 是相关联记录的集合。
‫ ٭‬类型
▪ 流式无结构:字符流,用于源程序,目标程序等。 ▪ 记录式有结构:是一组相关数据项的集合,由N个字 节组成的具有特定意义的信息单位。关键字能唯一 地标识出记录的基本/组合数据项。主要用于信息管 理。
图8.13 磁盘的结构
8.4 文件存储空间管理 文件存储设备被分成若干个大小相等的物理块,以 块为单位来交换信息。 文件存储空间的管理实质上是空闲块的组织和管理 问题
‫ ٭‬空闲块的组织; ‫ ٭‬空闲块的分配; ‫ ٭‬空闲块的回收等。
有3种不同的空闲块管理方法:
‫ ٭‬空闲文件目录; ‫ ٭‬空闲块链; ‫ ٭‬位示图。
图7.12 磁带的结构
8.3.2 文件存储设备 2. 直接存取设备 ‫ ٭‬磁盘最典型。允许文件系统直接存取磁盘上的任 意物理块。为了存取一个特定的物理块,磁头将 直接移动到所要求的位臵上,而不需要像顺序存 取那样事先存取其他的物理块。
8.3Baidu Nhomakorabea2 文件存储设备
由一些磁盘片组成的磁盘组组成。 每个磁盘片对应一个装有读写磁头的磁头臂,磁头臂上的两个读写磁头 分别对磁盘片的上下两面进行读写。 系统在对磁盘进行初始化时,把每个磁盘片分割成一些大小相等的扇区。 在磁盘转动时经过读写磁头所形成的圆形轨迹称为磁道。由于磁头臂可 沿半径方向移动。因此,磁盘上有多条磁道。 把所有磁盘片的相同磁道称为一个柱面,因此,磁盘上每个物理块的位 臵可用柱面号、磁头号和扇区号表示,这些地址和物理块号一一对应。
图8.5文件的转臵结构
‫( ٭‬4) 顺序结构 ▪ 给定了顺序规定(例如按字母顺序),则把文件中的键按 规定的顺序排列起来就形成了顺序结构文件,如按时间 。
8.2.2
存取方法
用户通过对文件的存取来完成对文件的修改、追加和搜索等 操作。 文件的存取是要找到文件内容所在的逻辑地址。 常用的存取方法有三种: ‫ ٭‬顺序存取法:按照文件的逻辑地址顺序存取。在记录式 文件中,反映为按记录的排列顺序来存取,例如,若当 前读取的记录为Ri,则下一次读取的记录被自动地确定 为Ri的下一个相邻的记录Ri+1。在无结构的字符流文件 中,顺序存取反映当前读写指针的变化。在存取完一段 信息之后,读写指针自动加上或减去该段信息长度,以 便指出下次存取时的位臵。
‫ ٭‬按信息流向分类
▪ 输入文件,输出文件,输入输出文件
‫ ٭‬保护级别(存取控制) ▪ R, R/W,E(可执行),不保护
8.2 文件的逻辑结构与存取方法
概念:用户所能观察和访问到的文件的数据结构组织,独 立于物理特性,容易检索和修改。 无论是逻辑还是物理结构,都会影响到文件的检索速度
2.串联文件 ‫ ٭‬用非连续的物理块来存放文件信息。这些非连续的物理 块之间没有顺序关系,其中每个物理块设有一个指针, 指向其后续连接的另一个物理块,使得存放同一文件的 物理块链接成一个串联队列。 ‫ ٭‬文件离散地分配于各盘块中,以提高外存利用率,文件 长度可变,易于增删。但不适合随机存取。 ‫ ٭‬对应目录项:链表的首指针
8.3.1 文件的物理结构
图8.11 多重索引结构
8.3.1 文件的物理结构 ‫ ٭‬在实际系统中,总是把索引表的前几项设计成直 接寻址方式,也就是这几项所指的物理块中存放 的是文件信息;而索引表的后几项设计成多重索 引,也就是间接寻址方式。
8.3.2 文件存储设备
1. 顺序存取设备:只有在前面的物理块被存取访问过之后, 才能存取后续的物理块的内容。 ‫ ٭‬磁带最典型。为了在存取一个物理块时让磁带机提前加 速和不停止在下一个物理块的位臵上,磁带的两相邻的 物理块之间设计有一个间隙。
图8.9串联文件的物理结构
8.3.1 文件的物理结构
‫ ٭‬隐式链接 ▪ 文件目录表中有start块号,每块中有下一块号。
▪ 特点:只适合于顺序访问,对随机访问效率低, 可靠性差。
▪ 簇:包含多个块的单位,当以它为单位分配并链 接,可减少访问时间,但增大了内部碎片 ‫ ٭‬显式链接: ▪ 把用于链接的指针显式存放在内存的一张表中, 查找在内存中进行。
连续文件结构
8.3.1 文件的物理结构
‫ ٭‬特点:简单
▪ 顺序访问容易且速度快,因磁头移动距离小。
▪ 要求连续空间,一段时间后需整理磁盘以消除外 部碎片。 ▪ 必须事先知道长度,文件不易动态增长和删除。 ‫ ٭‬文件对应目录项(属性)中包含:
▪ 始址、总块数、最后一块字节数。
8.3.1 文件的物理结构
8.2.1
‫ ٭‬字符流式的无结构文件 ‫ ٭‬记录式的有结构文件
逻辑结构
用户可见,可分为两大类:
选取文件的逻辑结构应遵循的原则
‫ ٭‬当用户对文件信息进行修改时,应能尽量减少对已存储 好的文件信息的变动。
‫ ٭‬应使文件系统在尽可能短的时间内查找到需要查找的记 录或基本信息单位。 ‫ ٭‬应使文件信息占据最小的存储空间。 ‫ ٭‬应便于用户操作。
‫ ٭‬文件名命名符合标识符的定义。
文件系统 ‫ ٭‬操作系统中与管理文件有关的软件和数据。 ‫ ٭‬负责为用户建立文件,撤消、读写、修改和复制文件, 完成对文件的按名存取,并进行存取控制。
‫ ٭‬文件系统的特点
▪ 友好的用户接口,用户只对文件进行操作,而不管文 件结构和存放的物理位臵。
▪ 对文件按名存取,对用户透明。
8.2.1 字符流的无结构文件:
逻辑结构
‫ ٭‬查找基本信息单位,例如某个单词比较困难。 ‫ ٭‬管理简单,用户可以方便地进行操作。 ‫ ٭‬那些对基本信息单位操作不多的文件较适于采用字符流 的无结构方式,例如,源程序文件、目标代码文件等。
记录式的有结构文件:
‫ ٭‬可把文件中的记录按各种不同的方式排列,构成不同的 逻辑结构,以使用户对文件中的记录进行修改、追加、 查找和管理等操作。
第8章 文件系统
8.1文件系统的概念 8.1 文件系统的概念
1、文件系统的引入
图8.1操作系统的软硬件管理
为了实现透明存取,出现文件系统: ‫ ٭‬不必了解文件存放的物理结构、查找方法等与存取介质有关 的部分; ‫ ٭‬只需给定一个文件名,文件系统就会自动完成相对应的有关 操作。 文件系统完成任务: ‫ ٭‬对辅助空间统一管理 ‫ ٭‬设立文件逻辑结构,实现按名存取 ‫ ٭‬设立文件物理结构,便于存放、加工信息 ‫ ٭‬查找存储设备中的文件信息 ‫ ٭‬实现文件的共享和保护
图8.3文件的记录名和关键字构成的行列式
8.2.1
逻辑结构
▪ 把行列式中那些为零的项去掉,并以键Ki为队首,以 包含键Ki的记录为队列元素来构成一个记录队列。对 于一个有m个键的队列来说,这样的队列有m个。这m 个队列构成了该文件的多重结构(multi_list)。
图8.4文件的多重结构
‫( ٭‬3) 转臵结构 ▪ 转臵结构把含有相同键的记录指针全部指向该键,也就 是说,把所有与同一键对应的记录的指针连续地臵于目 录中该键的位臵下。转臵结构最适合于给定键后的记录 搜索。
8.3文件的物理结构与存储设备 对不同种类的文件采用不同的存取方法。无论是哪 种存取方法,都是首先搜索到操作对象记录或某段 字符流信息的逻辑地址,然后,由逻辑地址映射到 对应的物理地址,再对物理地址的有关信息进行操 作的。 由逻辑地址到物理地址的映射和文件的存储方式 (即文件的物理结构)紧密相关。
图8.10索引文件示意图
8.3.1 文件的物理结构
8.3.1 文件的物理结构
在很多情况下,有的文件很大,文件索引表也就较大。如果 索引表的大小超过了一个物理块,就必须像处理其他文件的 存放那样决定索引表的物理存放方式,但这不利于索引表的 动态增加;索引表也可按串联方式存放,但这却增加了存放 索引表的时间开销。
相关文档
最新文档