文件定义

定义1
文件是指由创建者所定义的、具有文件名的一组相关元素的集合,可分为有结构文件和无结构文件;

  • 有结构文件
    若干个相关记录组成的文件
  • 无结构文件
    字符流文件

定义2
文件是为了某种目的而组织起来的信息集合。

理解
文件是计算机组织信息的单位。
文件是有一定格式的,由若干个信息的逻辑单元组成。
这些逻辑单元的结构与意义由不同的软件、不同的用户进行具体解释。
数据库文件:每个逻辑单元(一个记录)表示一组信息;
数据文件:每个逻辑单元表示一个数据,如实数、整数等;
程序文件:每个逻辑单元表示一条指令;
文本文件:每个逻辑单元是一行字符串

文件逻辑结构定义及分类

从用户(应用软件程序员)角度看到的文件组织形式;
文件的逻辑结构与存储设备特性无关;

分类:

  • 无结构文件
    长度以字节为单位。把流式文件看作是记录式文件的一个特例。
    例如:可执行文件、 库函数等
    对流式文件的访问,采用读写指针来指出下一个要访问的字符。
  • 有结构文件
    若干记录组成
    记录是信息逻辑单元
    核心问题:如何根据关键值快速定位文件中的记录

文件的物理结构及分类

又称为文件的存储结构,是指文件在外存的存储组织形式。
文件的物理结构与存储设备的特性关系密切。

文件控制块

文件控制块(FCB)是操作系统为管理文件而设置的数据结构;
存放管理文件所需有关信息(文件属性);
文件管理和访问必须从FCB中得到必要的文件属性信息,至少是文件名和起始存储地址。

文件目录的定义(文件控制块的有序集合)

文件目录:把所有的FCB组织在一起,就构成了文件目录,即文件控制块的有序集合;
目录项:一个目录项就是一个文件的FCB;
目录文件:为了实现对文件目录的管理,通常将文件目录以文件的形式保存在外存,这个文件就叫目录文件;

索引节点概念、引入索引节点的原因

在UNIX系统中,采用了把文件名与文件描述信息分开的办法,使文件描述信息单独形成一个称为索引结点的数据结构,简称为i结点。
在文件目录中的每个目录项,仅由文件名和指向该文件所对应的i结点的指针所构成。
文件目录通常存放在磁盘上,当文件很多时,文件目录可能要占用大量的盘块,查找一个文件需启动磁盘多次;
解决方案:精简目录,去除文件的描述信息。