文件管理
文件和文件系统
文件时具有文件名的若干相关元素的集合。元素通常是记录,记录又是一组有意义的数据项集合。
文件、记录和数据项
数据项
- 基本数据项:用于描述一个对象的某种属性的集合,是数据组织中可以命名的最小逻辑数据单位,又称为字段。
- 组合数据项:是由若干个基本数据项所组成
记录
一组相关的数据项的集合
文件
文件有有结构文件和无结构文件两类。有以下属性:
- 文件类型
- 文件长度
- 文件的物理位置
- 文件的建立时间
文件名和文件类型
文件名和拓展名
文件类型
按性质和用途来分
- 系统文件
- 用户文件
- 库文件
按文件中数据的形式来分
- 源文件
- 目标文件
- 可执行文件
按存取控制属性来分类
- 可执行文件:该文件只允许被核准的用户去执行调用
- 只读文件:该类文件只允许文件拥有者及被核准的用户去读取,不允许写
- 读/写文件:允许文件拥有者和被核准的用户去读写文件
按组织形式和处理方式分类
- 普通文件
- 目录文件
- 特殊文件
文件系统的层次结构
对象及其属性
文件系统所管理的对象有3类:
- 文件
- 目录
- 磁盘(磁带)存储空间
对对象进行操纵和管理的软件集合
与文件系统有关的软件分为四个层次:
- I/O控制层
- 基本文件系统
- 文件组织模块
- 逻辑文件系统
文件系统接口
- 命令接口:用户与文件系统直接进行交互
- 程序接口:用户程序与文件系统之间的接口
文件的逻辑结构
指的是用户角度出发所观察到的文件组织形式,即文件是由一系列的逻辑记录所组成的。
文件逻辑结构的类型
按文件是否有结构来分
- 有结构文件:(1)定长记录:指的是所有文件的记录的长度都是等长的;(2)变长记录:文件中各记录的长度不一定相同,比如论文的摘要。
- 无结构文件:是一种特殊的有结构文件
按文件的组织方式来分
- 顺序文件
- 索引文件
- 索引顺序文件
顺序文件
顺序文件的排列方式
- 串结构
- 顺序结构
顺序结构的优缺点
所有的逻辑文件之中,顺序文件的存取效率是最高的。都是要查找或者修改单个的记录,则需要在文件的记录中组个的进行查找,此时顺序文件表现出来的性能就可能会很差。无论是想要增加或者删除一条记录,都比较的困难。
索引文件
按关键字建立索引
索引顺序文件
索引顺序文件的特征
引入文件索引表,通过该表可以实现对索引顺序文件的随机访问;另一个是增加了溢出文件,用它来记录新增加的、删除和修改的记录。
文件目录
文件目录管理的要求如下:
- 实现按名存取
- 提高对目录的检索效率
- 文件共享
- 允许文件重名
文件控制块和索引节点
文件与FCB一一对应,而人们把FCB的有序集合称为文件目录,即一个FCB就是一个文件目录项。
FCB
- 基本信息类
- 存取控制信息类
- 使用信息类
简单的文件目录
单级文件目录
整个文件系统中只建立一张目录表,每个文件占一个目录项。结构如下:
两级文件目录
两级文件目录提高了检索的效率,在不同的UFD中,可以使用相同的文件名,只要用户自己的UFD中的文件名都是唯一的就可以了。不同用户还可以使用不同的文件名来访问系统中的同一共享文件。
树形目录
目录查询技术
- 线性检索法
- Hash方法
文件保护
影响文件安全性的因素如下:
- 人为因素:人们有意无意的行为
- 系统因素:系统的某个部分出现异常
- 自然因素:随着时间的推移数据消失
确保文件的安全性,可以采取以下的措施:
- 通过存取控制机制
- 采取系统容错技术
- 建立后备系统