【从零开始学习计算机科学】操作系统(七)文件管理
【从零开始学习计算机科学】操作系统(七)文件管理
- 文件管理
-
- 文件的逻辑结构
- 文件的读写方式
- 文件的物理结构与组织
- 文件目录
- 空闲块管理
- 文件的共享
- 文件的权限控制与保护
- 文件系统的其他功能
文件管理
文件管理主要涉及文件的逻辑组织和物理组织,目录的结构和管理。所谓文件管理,就是操作系统中实现文件统一管理的一组软件、被管理的文件以及为实施文件管理所需要的一些数据结构的总称(是操作系统中负责存取和管理文件信息的机构)从系统角度来看,文件系统是对文件存储器的存储空间进行组织,分配和回收,负责文件的存储,检索,共享和保护。从用户角度来看,文件系统主要是实现"按名取存",文件系统的用户只要知道所需文件的文件名,就可存取文件中的信息,而无需知道这些文件究竟存放在什么地方。
文件管理的核心对象是文件。文件有多种定义,我们可以自底向上来分析文件结构组成:
(1)数据项。数据项是文件系统中最低级的数据组织形式,可分为以下两种类型:基本数据项和组合数据项。
(2)记录。记录是一个具有特定意义的信息单位,它由该记录在文件中的逻辑地址(相对位置)与记录名所对应的一组键、属性及其属性值所组成。
(3)文件。文件是指由创建者所定义的一组相关信息的集合,可分为有结构文件和无结构文件两种。在有结构文件中,文件由一组相似记录组成。文件有一定的属性,这根据系统的不同而有所不同,但是通常都包括如下属性。
- 名称。用户为文件指定的名称,便于用户按名存取文件。
- 标识符。标识文件系统内文件的唯一标签,通常为数字,用户无法直接使用该标识符。
- 文件类型。支持不同类型文件的系统需要这种信息。
- 位置。指向存储设备和设备上文件位置的指针。
- 大小。文件当前大小(用字节、字或块表示),也可包含文件允许的最大值。
- 保护。对文件进行保护的访问控制信息。
- 时间、日期和用户标识。文件创建、上次修改和上次访问的相关信息,用于保护、安全和跟踪文件的使用。
有些较新的文件系统还支持扩展文件属性,包括文件的字符编码和安全功能等属性。
文件的逻辑结构
文件不仅仅是一个集合,其内部也有相应的逻辑结构。文件的逻辑结构是用户可见的结构,逻辑文件从结构上分成二种形式:
无结构的流式文件,是指对文件内信息不再划分单位,它是依次的一串字符流构成的文件。有结构的记录式文件,是用户把文件内的信息按逻辑上独立的含义划分信息单位,每个单位称为一个逻辑记录(简称记录)。
文件的逻辑结构应遵循下述原则:
- 当用户对文件信息进行修改操作时,逻辑结构应能尽量减少对已存储好的文件信息的变动。
- 当用户需要对文件信息进行读取操作时,逻辑结构应使文件系统在尽可能短的时间内查找到需要查找的记录或基本信息单位。
- 尽可能减少文件信息存储空间的占用。
文件有许多不同的逻辑结构。
-
堆结构。堆结构是最简单的文件组织形式。文件中的记录可以长短不一,每条记录可以拥有不同的属性。这些记录的组织方式是按照生成的先后顺序排列而成。也就是说,记录的排列顺序与记录内容是无关的。堆结构的文件有利于记录的追加,能够较好地用于穷举查找。但是如果需要按照关键字查找某条记录时,只能搜索文件的全部内容,效率会很差。因此这种组织方式对于大部分文件都是不适用的。
-
顺序结构。顺序结构是一种最常见的文