• Operating System Video Tutorials

操作系统 - 文件系统



文件

文件是存储在辅助存储器(如磁盘、磁带和光盘)上的一组相关信息的命名集合。一般来说,文件是由位、字节、行或记录组成的序列,其含义由文件的创建者和用户定义。

文件结构

文件结构应符合操作系统能够理解的所需格式。

  • 文件根据其类型具有特定的定义结构。

  • 文本文件是由字符组成的序列,这些字符组织成行。

  • 源文件是由过程和函数组成的序列。

  • 目标文件是由字节组成的序列,这些字节组织成机器可以理解的块。

  • 当操作系统定义不同的文件结构时,它还包含支持这些文件结构的代码。Unix、MS-DOS 支持最少数量的文件结构。

Explore our latest online courses and learn new skills at your own pace. Enroll and become a certified expert to boost your career.

文件类型

文件类型是指操作系统区分不同类型文件(如文本文件、源文件和二进制文件等)的能力。许多操作系统支持多种类型的文件。像 MS-DOS 和 UNIX 这样的操作系统具有以下类型的文件:

普通文件

  • 这些文件包含用户信息。
  • 它们可能包含文本、数据库或可执行程序。
  • 用户可以对这些文件执行各种操作,例如添加、修改、删除甚至删除整个文件。

目录文件

  • 这些文件包含文件名列表以及与这些文件相关的其他信息。

特殊文件

  • 这些文件也称为设备文件。
  • 这些文件表示物理设备,例如磁盘、终端、打印机、网络、磁带驱动器等。

这些文件分为两种类型:

  • 字符特殊文件 - 数据逐个字符处理,如终端或打印机的情况。

  • 块特殊文件 - 数据按块处理,如磁盘和磁带的情况。

文件访问机制

文件访问机制是指访问文件记录的方式。有几种访问文件的方法:

  • 顺序访问
  • 直接/随机访问
  • 索引顺序访问

顺序访问

顺序访问是指按某种顺序访问记录,即按顺序处理文件中的信息,一次一个记录。这种访问方法是最原始的方法。示例:编译器通常以这种方式访问文件。

直接/随机访问

  • 随机访问文件组织提供直接访问记录的功能。

  • 每个记录在文件中都有其自己的地址,借助该地址可以直接访问该记录以进行读取或写入。

  • 记录不必在文件中按任何顺序排列,并且它们不必在存储介质上的相邻位置。

索引顺序访问

  • 此机制建立在顺序访问的基础之上。
  • 为每个文件创建一个索引,其中包含指向各个块的指针。
  • 顺序搜索索引,并使用其指针直接访问文件。

空间分配

文件由操作系统分配磁盘空间。操作系统采用以下三种主要方法来为文件分配磁盘空间。

  • 连续分配
  • 链接分配
  • 索引分配

连续分配

  • 每个文件在磁盘上占据一个连续的地址空间。
  • 分配的磁盘地址按线性顺序排列。
  • 易于实现。
  • 外部碎片是这种分配技术的重大问题。

链接分配

  • 每个文件都包含一个指向磁盘块的链接列表。
  • 目录包含指向文件第一个块的链接/指针。
  • 没有外部碎片
  • 有效地用于顺序访问文件。
  • 在直接访问文件中效率低下。

索引分配

  • 解决了连续分配和链接分配的问题。
  • 创建一个索引块,其中包含所有指向文件的指针。
  • 每个文件都有其自己的索引块,其中存储着文件占用的磁盘空间的地址。
  • 目录包含文件的索引块的地址。
广告