文章目录
7、8、9章的重点
7、文件管理
7.1 文件与文件系统
-
文件
-
文件是有创建者所定义的、具有文件名的一组相关元素的集合,文件由若干个相关记录组成或文件被看成是一个字符流
-
数据项
- 用于描述一个对象的某种属性的字符集
-
记录
- 是一组相关数据项的集合,用于描述一个对象某方面的属性
-
文件属性包括
- 文件类型
- 文件长度
- 文件物理位置
- 文件的建立时间
-
-
文件系统
-
是操作系统中统一管理信息资源的一种软件,管理文件的存储、检索、更新,提供安全可靠的共享和保护手段
-
功能
- 同意管理文件存储空间
- 实现文件名的按名存取
- 向用户提供一个方便使用的接口
- 系统维护及向用户提供有关信息
- 提供与I/O的统一接口
-
-
文件分类
-
文件保护方式分类
- 只读文件
- 读写文件
- 可执行文件
-
-
文件操作
- 建立文件
- 打开文件
- 读写文件
- 关闭文件
- 撤销文件
7.2 文件的逻辑结构
-
从用户的角度看文件
-
流式文件
- 构成文件的基本单位是字符
-
纪录文件
7.3 文件目录管理
-
文件控制块(FCB)
- 存放了为管理文件所需的相关信息
- 文件名、文件号、用户名、文件地址、文件长度、文件类型、文件属性、共享计数、文件建立时间、保存期限等等
-
文件目录
-
把所有的FCB组织在一起,构成了文件目录,即文件控制块的集合
-
目录项
- 一个FCB
-
目录文件
- 用来保存文件目录
-
-
对目录管理的要求
- 实现“按名存取”
- 提高对目录的检索速度
- 允许文件重名
-
目录结构
-
单级目录结构
- 不允许文件重名
- 限制了对文件的共享
-
二级目录结构
-
主文件目录
-
用户文件目录
- 给出该用户所有文件的FCB
-
缺点
- 增加了系统的开销
-
优点
- 提高了检索的速度
- 解决了文件重名问题
- 提高了检索目录的速度
-
-
多级目录结构(树型目录)
-
绝对路径
- 从根目录开始的路径
-
相对路径
- 从当前目录开始的路径
-
优点
- 层次结构清晰,便于管理和保护
- 有利于文件的分类
- 能进行存取权限的控制
-
缺点
- 多次访问盘影响速度
-
-
-
目录查询技术
- 哈希表算法
- B+树
-
记录的成组与分解
-
记录成组
-
概念
- 将若干个逻辑记录合成一组存放一块的工作,每块中的逻辑记录的个数称为块因子
-
好处
- 节省了存储空间,提高了存储空间的利用率,减少了启动外设的次数,提高了系统的工作效率
-
-
分解
- 从一组逻辑记录中把一个逻辑记录从块中分离出来的操作
-
7.4 文件共享与文件保护
-
文件共享目的
- 节省时间和存储空间,减少用户工作量
- 进程间通过文件交换信息
-
文件共享的方式
- 链接法
- 绕道法
-
文件保护
-
文件保护的实现
- 用户验证
- 口令
- 物理鉴定
- 存取控制
-
文件保护
- 防止在使用文件时破坏文件以及限制文件的访问
- 对每个文件规定使用权限
-
文件保密
- 防止他人窃取文件
- 设置访问口令或者对文件进行加密
-
8、磁盘存储管理
8.1 外存的组织形式
-
文件的物理结构是从系统的角度看文件,又称为文件的存储结构
-
1、连续结构(顺序结构)
-
2、链接结构
-
各块之间通过指针进行链接
-
优点
- 提高了磁盘空间的利用率,不存在外部碎片问题
- 有利于文件的插入和删除
- 有利于文件动态扩充
-
缺点
- 存取速度慢,不适于随机存取
- 可靠性问题
-
-
3、索引结构
-
优点
- 既能顺序存取又能随机存取
- 满足了文件动态增长、插入删除的要求
- 能充分利用外存空间
-
缺点
- 索引表带来额外开销
- 较多的寻道次数和寻道时间
-
8.2 文件存储空间的管理
-
1、空闲表法
- 将所有的空闲块记录在一个表中,即空闲块表
-
2、空闲链表法
- 把所有空闲块链成一个链
- 成组链接法
-
3、位示图法
-
用一串二进制位反映磁盘空间中分配使用情况, 每个物理块对应一位,分配物理块为1, 否则为0
-
申请物理块时,可以在位示图中查找为0的位,返回对应物理块号
-
归还时,将对应位转置为0
-
字号和位号
- 盘块号为b,组成的位示图字的字长为n
- 字号 = (b-1)/n+1
- 位号 = (b-1)%n+1
-
9、操作系统的接口
两种接口
-
程序接口
-
系统调用
-
实质
- 由一组系统调用组成
- 每一个系统调用都是一个能完成特定功能的子程序
-
实现方式
- 采用访管的方式实现的
- 通过产生访管中断,使处理机从目态转换为管态
-
实现要点
- 编写系统调用处理程序
- 设计一张系统调用入口地址表
- 陷入处理机制需开辟现场保护区,以保存发生系统调用时的处理器现场
-
系统调用实现过程
-
-
操作接口
-
操作命令或JCL(作业控制语言)
-
操作系统为用户操作计算机工作和提供服务的手段的集合
-
作业控制方式
- 联机用户接口
- 脱机用户接口
- 命令解释程序通常处于OS的最外层,用户直接与它打交道
-
XMind - Trial Version