第11章 文件系统 11.1 概述 计算机系统是一个信息加工系统,所有的信息以程序、数据或表格形式存放在外存储器中,称为文件。 第11章 文件系统 11.1 概述 计算机系统是一个信息加工系统,所有的信息以程序、数据或表格形式存放在外存储器中,称为文件。 文件及文件系统 ⑴ 文件:一段赋名的程序或数据的集合,在逻辑上具有完整意义的数据或字符序列的集合。 ⑵ 文件名:每一个文件有一个文件名,作为文件的标识符。 ⑶ 记录:文件由若干个记录组成,每一个记录是一些相关信息的集合。 ⑷ 信息项(数据项):由若干个字节或字符组成。 ⑸ 字符:包括字母、数字及专用符号。 ⑹ 字节:计算机中可以编址的最小信息项。 ⑺ 文件系统:负责存取和管理文件的机构,又称文件管理系统。 计算机软件技术基础 文件管理
11.1 概述 二、 文件分类 按性质和用途 系统文件:与操作系统有关的程序和数据,只供操作系统自身调用。 库 文 件:系统提供给用户使用的标准过程、函数及各种实用程序,用户可以调用,但不允许修改。 用户文件:用户根据需要自己编制的程序及数据。 按组织形式 普通文件:一般格式的文件 目录文件:检索普通文件的信息 特殊文件:所有的输入/输出设备 计算机软件技术基础 文件管理
二、文件分类 按存取权限分类 可执行文件:用户可以执行但不能读写或修改的文件。 只读文件 :用户可以读或执行但不能修改的文件。 只读文件 :用户可以读或执行但不能修改的文件。 读写文件 :用户可以读、写、执行的文件。 不保护文件:可以被系统中任一用户使用的文件。 按信息流向 输入 输出 输入/输出 计算机软件技术基础 文件管理
11.1 概述 三、文件系统 OS中与管理文件有关的软件和数据。 目标 用户---存取文件方便,信息存储安全,共享; 系统---存储空间的组织.分配;信息的传输,检索与保护. 2. 功能 负责为用户建立文件;撤消.读写.修改和复制文件; 完成对文件的按名存取和进行存取控制。 计算机软件技术基础 文件管理
11.1 概述 四、文件的逻辑组织 文件的逻辑结构是从用户的角度看到的文件面貌,就是它的记录结构,是用户可见的文件结构。 记录式有结构文件---一组连续顺序记录的集合; 字符流式无结构文件---一组相关信息合成的有序字符流。 五、文件存取方式 顺序存取:按文件的逻辑地址顺序存取; 随机存取:根据记录(或大小相等的块)的编号来存取文件。 计算机软件技术基础 文件管理
11.2 文件的物理组织 文件的物理结构是指一个逻辑文件在外存储器上的存放形式。外存储器是以物理段或物理块为单位存放文件记录的,称为物理记录。物理记录的大小随外存的不同而不同,而文件的逻辑记录的长度也是不同的,因此逻辑记录与物理记录之间没有固定的对应关系。 对应不同的文件存取方式,对文件的物理结构有不同的要求,常见的有以下三种: 1)顺序结构(连续文件) 2)链接结构(串连文件) 3)索引结构 计算机软件技术基础 文件管理
11.2 文件的物理组织 一、连续文件: 把逻辑上连续的文件信息依次存放到连续编号的物理块中 文件分配表 文件长度(4) 第一物理块号(10) 文件A 13 …… 12 11 10 物理存储设备 逻辑块号 1 2 3 对于连续文件,用户应事先给出文件的最大长度,以便在建立文件时为它分配足够的外存空间。这类文件存取形式主要是读、写,不允许对文件中间记录进行插入或删除,只能在文件的末端进行插入或删除。 优点:顺序存取块; 缺点:动态增长不方便;存在碎片。 计算机软件技术基础 文件管理
11.2 文件的物理组织 文件目录 文件的链接结构 二、串连文件 它的逻辑记录可以分配在不连续的物理段中,而且也不必顺序排列。在每一段中设有一个指针,指向下一个逻辑记录的物理段。第一个记录的物理段地址在该文件目录的文件说明中指出,如下图所示。 第一个记录物理段号 … 物理段2 指针8 物理段8 指针3 物理段3 指针9 文件目录 逻辑记录0 逻辑记录1 逻辑记录2 文件的链接结构 计算机软件技术基础 文件管理
二、串连文件 链接结构的文件克服了顺序结构文件的不足,可以无须事先确定文件的长度,而且可以在任何记录之间插入或删除一个记录。 缺点:由于文件的记录分散在整个外存空间中,即使顺序访问各记录,也使查找时间较长。并且必须从文件的第一段开始访问。因此链接结构不适用于随机访问的应用方式。此外,每个物理段都有一个链指针,增加了外存空间的开销。 计算机软件技术基础 文件管理
11.2 文件的物理组织 三、索引文件 顺序结构和链接结构适用于顺序访问的应用场合,当用户经常随机访问文件中某个记录时,以采用索引结构为好。 索引结构是系统为每个文件建立一张索引表,主要内容:关键字和记录的物理地址。 关键字是用户在检索记录时用作索引的数据项,索引表按关键字递增排序。 物理地址是指该记录所在的物理段号。 索引结构的文件既可按索引顺序进行顺序访问,也可按关键字随机访问某个记录。 计算机软件技术基础 文件管理
三、索引文件 索引结构如下图所示。通常把索引表作为一个文件,称为索引文件,放在外存,当需要时再调入内存。因此这种结构的文件在进行存取操作时,先调用索引表,再存取相应的记录。要对外存进行两次访问,时间较长。 关键字 长度 物理段号 l1 l2 l3 索引表 物理段 逻辑记录 外存储器 1 2 计算机软件技术基础 文件管理
11.2 文件的物理组织 四、多重索引 又称间接索引 文件很大时,文件的索引表就很大,如果超过了一个物理块的大小时,再索引表所至的物理块中存放的不是文件信息,而是装有这些信息的物理块地址。 计算机软件技术基础 文件管理
11.3 目录结构 一、目录 文件名以及对该文件的控制管理信息称为文件的目录。 为了便于对文件进行存取和管理,所有计算机系统都设置一个文件目录,每个文件在文件目录中都有一个表目,存放描述文件的有关信息。通常文件目录中包含以下内容: 文件符号名:文件建立者提供 文件内部名:文件系统为文件提供的唯一的标识符。 文件在外存的起始地址 文件结构形式(顺序、链接、索引) 文件类型 文件的存取控制说明 文件的建立及修改日期等 计算机软件技术基础 文件管理
11.3 目录结构 二、目录结构 根据系统的大小及复杂程度,文件目录可以有不同的结构: 单级目录 最简单的结构,它把系统中所有文件都建立在一张目录表中,整个目录结构是一个线性表。 缺点: 1)所有文件在一张目录表中,由于表目多,增加查找时间。 2)目录中的文件符号不能重复,即不同用户对不同文件不能起相同的名字。因此一级目录结构主要用于单用户操作系统中。 计算机软件技术基础 文件管理
二、目录结构 注:在二级目录中,不同用户的文件可以起相同的文件名。 UFD1 二级目录 MFD 文件1 用户1 文件2 用户2 文件3 用户3 用户2 用户1 MFD 文件3 文件2 文件1 UFD2 二级目录 二级目录结构由主目录文件(MFD)与用户目录文件(UFD)组成 , 如下图所示。 主目录:每一个用户有一个表目,指出各用户文件目录的位置,存放不同组名有关存取控制信息; 用户文件目录:存放各用户文件的文件说明信息。 注:在二级目录中,不同用户的文件可以起相同的文件名。 计算机软件技术基础 文件管理
二、目录结构 树形目录 在较大系统中,为了给大作业用户带来更多的方便,可以为每个用户按任务的不同层次、不同领域建立多层次的分目录,称为多级目录结构。如下图所示。每一个结点(目录)出来的分支可以是文件,也可以是下一级目录。图中用圆代表文件,用矩形代表目录文件。 计算机软件技术基础 文件管理
3.树形目录 A B C 主目录M F D E H O P 计算机软件技术基础 文件管理
3.树形目录 当用户要访问多级目录中某一个文件时,一般用文件的“路径名”来标识文件。文件的路径名是从主目录出发,一直到要找的文件,把沿途各结点名连接在一起形成的。例如上页图中M/C/B/D表示访问的是从主目录M到子目录C,B下的D文件。 用文件路径来标识文件,只要在同一结点的目录文件中没有重名文件,那么路径名就能唯一的确定一个被查找文件。 但是多级目录结构沿着路径查找文件时,要经过若干次间接查找才能最后找到该文件,这可能浪费较多时间,为此引进了一个“当前目录”来克服这一缺点,即有用户指定,在一定时间内以某一级目录作为当前目录,用户只需从“当前目录”查起即可。 计算机软件技术基础 文件管理
11.4 文件存储空间的管理 对存储设备空闲块的组织和管理. 一、空闲空间表法 … 4 15,16,17,18,19 5 15 3 系统为所有“空闲块”建立一个目录,称为空闲空间表。当要求分配存储空间时,系统扫描空闲空间表,找到一个合适的空闲块,进行分配。当用户撤消一个文件时,系统自动将回收的空间建立一个新的空闲块。 空闲空间表项:空闲块个数、空闲块号、第一空闲块号。 此法适用连续结构文件。 … 4 15,16,17,18,19 5 15 3 9,10,11 9 2 2,3,4,5 1 物理块号 空白块数 第1个空白块号 序号 空闲空间表 计算机软件技术基础 文件管理
11.4 文件存储空间的管理 二、空闲块链法 三、位示图 1 15 14 13 12 11 10 9 8 7 6 5 4 3 2 把文件存储设备中的所有空闲块通过指针连接在一起。分配时,从链首取空闲块;回收时,空闲块插入链尾。 三、位示图 从内存中划出若干个字节,为每个文件存储设备建立一张位示图。其中每一比特位都对应存储设备的每个物理块,该位为“0”表示对应的块时空闲;反之,该位为“1”表示对应的块已被分配。 1 15 14 13 12 11 10 9 8 7 6 5 4 3 2 计算机软件技术基础 文件管理