文件:一组带有标识的,在逻辑上有完整意义的信息项的序列
信息项:构成文件内容的基本单位,信息项之间具有顺序关系
文件系统:操作系统中统一管理信息资源的一种软件
文件的分类(unix)
- 普通文件:用户自己建立使用的文件,一般为 ASII 或二进制文件
- 目录文件:操作系统为了管理文件系统而建立的系统文件
- 特殊文件:将各种设备抽象成的文件,有利于提供一个统一的操作接口。如字符设备文件(终端、打印机),块设备文件(磁盘)
- 管道文件
- 套接字
文件逻辑结构
- 流式文件:文件是有逻辑意义、无结构的一串字符的集合
- 记录式文件:文件由若干个记录组成,可以按记录进行读、写、查找等操作
磁盘访问
- 一次访问请求:读/写,磁盘地址(设备号,盘面号,磁道号,扇区号),内存地址(源/目)
磁盘空间管理
- 位图:用一串二进制位反映磁盘空间中的分配使用情况,每个物理块号对应一位,已分配的为0,否则为1
- 空闲快表:
- 空闲块链表:将空闲块串成链表
文件存储结构 — 多级索引
UNIX文件系统采用的是多级索引结构(综合模式)
- 每个文件的主索引表有15个索引项,每项2个字节
- 前12项直接存放文件的物理块号(直接寻址)
- 如果文件大于12块,则利用第13项指向一个物理块,在该块中存放文件物理块的块号(一级索引表)
- 假设扇区大小为512字节,物理块等于扇区块大小,一级索引表可以存放256个物理块号
- 对于更大的文件还可利用第14和第15项作为二级和三级索引表
采用这种结构,一个文件最大可达到 12+256+256^2+256^3 个物理块
文件系统的性能
磁盘服务 — 速度成为系统性能的主要瓶颈之一,所以文件系统应尽可能减少磁盘访问次数
提高文件系统性能的方法:
目录项分解、当前目录、磁盘碎片整理、磁盘调度
如何加快目录检索?
目录项分解法:把 FCB 分解成两部分
- 符号目录项:文件名、文件号
- 基本目录项:除文件名之外的所有字段