谁共我
醉明月
概念
文件
- 文件是以计算机硬盘为载体存储在计算机上的信息集合
- 文件属性
- 名称
- 标识符
- 类型
- 位置
- 大小
- 保护
- 时间、日期、用户标识
- 文件的基本操作
- 创建文件
- 写文件
- 读文件
- 文件重定位
- 删除文件
- 截断文件
- 文件逻辑结构
- 无结构文件(流式文件)
- 有结构文件(记录式文件)
- 顺序文件
- 串结构(记录之间顺序与关键字无关)
- 顺序结构(记录之间顺序与关键字有关)
- 索引文件
- 索引顺序文件
- 直接文件(散列文件)
- 顺序文件
目录
- 文件控制块(FCB)
- 基本信息
- 存取控制信息
- 使用信息
- 索引结点
- 目录操作
- 搜索
- 创建文件
- 删除文件
- 显示目录
- 修改目录
- 目录结构
- 单级目录结构(整个文件系统中只建立一张目录表,每个文件占一个目录项)
- 两级目录结构(主文件目录MFD和用户文件目录UFD,MFD记录用户名及其对应UFD位置,UFD记录该用户文件FCB信息)
- 多级目录结构(树形目录结构)
- 无环图目录结构
- 文件共享
- 基于索引结点的共享(硬链接)
将共享文件或子目录的索引结点链接到两个或多个用户目录中 - 基于符号链接实现共享(软链接)
创建Link类型新文件,只记录被链接文件的路径名
- 基于索引结点的共享(硬链接)
- 文件保护
- 口令保护(通过口令访问文件)
- 密码保护(对文件进行加密处理)
- 访问控制(根据访问者身份进行限制)
文件系统实现
- 文件系统层次结构
- 用户调用接口
- 文件目录系统
- 存取控制验证
- 逻辑文件系统和文件信息缓冲区
- 物理文件系统
- 分配模块
- 设备管理程序模块
- 目录实现
- 线性列表
- 哈希表
- 文件实现
- 文件分配方式
- 连续分配
- 链接分配
- 隐式(链表结构)
- 显式
- 索引分配
- 链接方案
- 多层索引
- 混合索引
类别 访问第n个记录 优点 缺点 顺序分配 访问磁盘1次 顺序存取时速度快,当文件时定长时可以根据文件起始地址以及记录长度进行随机访问 文件要求连续的存储空间,会产生碎片,不利于文件动态扩充 链接分配 访问磁盘n次 解决外存碎片问题,提高空间利用率,动态增长方便 只能按文件的指针链顺序访问,查找效率低,指针信息存放消耗外存空间 索引分配 m级需要访问m+1次 可随机访问,易于文件增删 索引表增加存储空间开销 - 文件分配方式
- 文件存储空间管理
实质上是对空闲块的组织和管理- 空闲表法
- 空闲链表法
- 空闲盘块链
- 空闲盘区链
-
位示图法
\(b = n(i-1) + j\)\(i = (b-1)/n + 1\)
\(j = (b-1)%n + 1\) - 成组链接法(适合大文件系统)
磁盘组织和管理
- 磁盘结构
- 磁道
- 扇区
- 磁盘读写操作时间
- 寻找时间(移到指定磁道)
- 延迟时间(移到指定扇区)
-
传输时间
- 总平均存取时间
\(T = T\_s + 1/2r + b/rN\)
T_s:寻找时间
r:转速
b:数据量
N:一个磁道上字节数
- 磁盘调度算法
- 先来先服务(FIFS)
- 最短寻找时间优先(SSTF)
- 扫描(SCAN)
- 循环扫描(C-SCAN)
注意
- 流式文件以字节为单位
- 只有顺序文件能存储在磁带上