文件系统专门负责管理外存储器尚的信息,这些信息是以文件的形式存放的。
(一)文件与文件系统
1.文件
文件是具有符号名的、在逻辑上具有完整意义的一组相关信息项的集合。
信息项是构成文件内容的基本单位,可以是一个字符、也可以是一个记录,记录可以等长,也可以不等长。
一个文件包括文件体和文件说明。
文件体是文件真实的内容。
文件说明是操作系统为了管理文件所用到的信息,包括:文件名、文件内部标识、文件的类型、文件存储地址、文件的长度、访问权限、建立时间和访问时间等。
2.文件系统
定义: 是操作系统中实现文件统一管理的一组软件和相关数据的集合,专门负责管理和存取文件信息的软件机构。
功能:
- 按名存取,用户可以按名字存取,而不是按地址存取;
- 统一的用户接口,不同设备上提供同样的接口,方便用户操作和编程;
- 并发访问和控制,在多道程序系统中支持对文件的并发访问和控制;
- 安全性控制,在多用户系统中的不同用户对同一文件可有不同的访问权限;
- 优化性能,采用相关技术提高系统对文件的存储效率、检索和读/写性能;
- 差错恢复,能够验证文件的正确性,并具有一定的差错恢复能力。
3.文件的类型
- 按性质和用途分
- 系统文件
- 库文件
- 用户文件
- 按保存期限分
- 临时文件
- 档案文件
- 永久文件
- 按文件的保护方式分
- 只读文件
- 读/写文件
- 可执行文件
- 不保护文件
(二)文件的结构和组织
文件的结构是指文件的组织形式。
从用户角度看到的文件组织形式称为文件的逻辑结构;文件在文件存储器上的存放方式称为文件的物理结构。
1.文件的逻辑结构
文件的逻辑结构分为:
- 有结构的记录式文件
- 定长记录,文件中所有记录的长度相同;
- 变长记录,文件中各记录的长度不同。
- 无结构的流式文件
无结构的流式文件通常采用顺序访问方式,并且每次读/写访问可以指定任意数据长度,其长度以字节为单位。
2.文件的物理结构
文件的物理机构是指文件的内部组织形式,即文件在物理存储设备上的存放方法。
常见的文件物理结构:
- 连续结构,也叫顺序结构,将逻辑上连续的文件信息(如记录)依次存放在连续编号的物理块上。
- 链接结构,也叫串联结构,是将逻辑上连续的文件信息(如记录)存放在不连续的物理块上,每个物理块设有一个指针指向下一个物理块。
- 索引结构,将逻辑上连续的文件信息(如记录)存放在不连续的物理块中,系统为每个文件建立一张索引表,索引表记录了文件信息所在的逻辑块号对应的物理块号,并将索引表的起始地址存放在与文件对应的文件目录项中。
- 多个物理块的索引表,索引表是在文件创建时由系统自动建立的,并与文件一起存放在同一文件卷上。
(三)文件目录
定义: 为了实现“按名存取”,系统为每个文件设置用于描述和控制文件的数据结构,它至少要包括文件名和存放文件的物理地址,这个数据结构称为文件控制块(FCB
),文件控制块的有序集合称为文件目录。
1.文件控制块
包含以下三类信息:
- 基本信息类,例如文件名、文件的物理地址、文件长度和文件块数等;
- 存取控制信息类,文件的存取权限;
- 使用信息类,文件建立日期、最后一次修改日期、最后一次访问日期、当前使用的信息等。
2.目录结构
常见的目录结构:
- 一级目录结构,整个目录是一个线性结构,系统为每个文件分配一个目录项。
- 二级目录结构,由主文件目录和用户目录组成,在主文件目录中,每个用户文件目录都占有一个目录项,其目录项中包括用户名和指向该用户目录文件的指针;用户目录是由用户所有文件的目录项组成。
- 多级目录结构,有树形目录结构,从根向下,每个结点是一个目录,叶节点是文件。
(四)存取方法和存储空间的管理
1.文件的存取方法
文件的存取方法是指读/写文件存储器上的一个物理块的方法,通常有顺序存取(对文件中的信息按顺序依次进行读/写)和随机存取(对文件中的信息可以按任意的次序随机地读/写)两种方法。
2.文件存储空间的管理
常用的空闲空间的管理方法有:
- 空闲区表,操作系统为磁盘外存上的所有空闲区建立一张空闲表,每个表项对应一个空闲区,空闲表中包含序号、空闲区的第一块号、空闲区的块数和状态等信息。适用于连续文件结构。
- 位示图,在外存上建立一张位示图,记录文件存储器的使用情况。
- 空闲块链,每个空闲物理块中有指向下一个空闲物理块的指针,所有空闲物理块构成一个链表,链表的头指针放左文件存储器的特定位置上,不需要磁盘分配表,节省空间。
- 成组链接法,系统将空闲块分成若干组,每100个空闲块为一组,每组的第一个空闲块登记了下一组空闲块的物理块号和空闲块数。
(五)文件的共享和保护
1.文件的共享
文件共享是指不同用户进程使用同一文件。
- 硬链接,指两个文件目录表指向同一个索引结点的链接。
- 符号链接,符号链接建立新的文件或目录,并于原来文件或目录的路径进行映射,当访问一个符号链接时,系统通过该映射找到原文件的路径,并对其进行访问。
2.文件的保护
- 存取控制矩阵
- 存取控制表
- 用户权限表
- 密码
(六)系统的安全与可靠性
1.系统的安全
- 系统级,不允许未经授权的用户进入系统;
- 用户级,对所有的用户进行分类和指定用户分配访问权,不同的用户对不同的文件设置不同的存取权限;
- 目录级,为了保护系统中各种目录而设计的,与用户权限无关;
- 文件级,通过系统管理员或文件主对文件属性的设置来控制用户对文件的访问。
2.文件系统的可靠性
文件系统的可靠性是指系统抵抗和预防各种物理性破坏和人为破坏的能力。
- 转储和恢复
- 日志文件
- 文件系统的一致性