文件系统(九)

9.1 文件系统概念

文件时计算机信息存取的一种重要组织形式. 文件由若干信息项有序构成. 信息项可以是字节,也可以是结构化数据.

用户通过读写指针来存取文件的信息项.文件具有文件名.用户通过文件名存取文件.

文件分类

标准:文件的用途

  • 系统文件: 包括OS的可执行程序和数据文件,不对用户开放,仅供系统使用
  • 库文件: 为用户提供的各种标准函数库和实用程序等.用户只能使用这些文件,而无权对其修改
  • 用户文件: 用户创建的文件,如用户可执行程序,源程序,数据文件等.文件的使用和修改权属于用户

标准: 文件的操作权限

  • 只读文件
  • 读写文件
  • 不保护文件

标准:文件的性质

  • 普通文件: 指一般的用户文件或系统文件
  • 目录文件: 记录目录里面文件列表信息
  • 设备文件: 把设备作为文件管理和使用

文件属性

指定文件的类型,操作特性和存取保护等一组信息,文件属性存放在文件所在目录的目录文件中. MS-DOS系统中,文件属性占目录项的一个字节

文件系统

  • 定义:负责管理文件的机构称为文件系统
  • 功能:负责文件的创立,撤销,读写,修改,复制和存取控制等,并管理存放文件的存储设备
  • 文件系统的目标是让用户以文件名来存取文件

文件结构

逻辑结构

  • 为用户提供逻辑结构清晰,使用方便的文件
  • 强调文件信息项的构成方式和用户的存取方式

物理结构

  • 文件在存储设备上的存储结构
  • 强调合理利用存储空间,缩短I/O存取时间

文件的存取方式

  • 顺序存取
  • 随机存取

9.2 文件物理结构

概念

  • 文件物理结构是指文件在存储设备上的存储方式
  • 强调强调合理利用存储空间,缩短I/O存取时间

类型

  • 连续文件
  • 索引结构
  • 串联文件

连续文件

  • 文件按照逻辑块的顺序存放在硬盘连续的物理存储块中
  • 文件目录记录文件长度(块数)和第一个存储块的块号

特点

文件建立时给出文件最大长度并登记文件起始位置

优点

  • 简单
  • 支持顺序存取和随机存取
  • 顺序存取速度快:所需磁盘寻道次数和寻道时间最少

缺点

  • 文件不易动态增长(预留空间:浪费;重新分配和移动)
  • 不利于文件插入和删除
  • 外部碎片问题

索引文件

概念

  • 文件存放在不连续的存储块中
  • 建立索引表记录文件逻辑块和物理存储块的对应关系
  • 索引表单独放在存储块中

特点

  • 文件=索引区+数据区
  • 先访问索引,再访问数据
  • 支持顺序存取和随机存取
  • 支持文件动态增长,插入,删除

串联文件

概念

文件存放在不连续的存储块中.每个存储块有一个指针(next),指向文件下一个存储块. 文件目录:指明文件名和第一个存储块的块号

特点

  • 适用于顺序存取,随机存取较为困难
  • 提高了磁盘空间利用率,不存在外部碎片问题
  • 有利于文件动态扩充,插入和删除

缺点

  • 存取速度慢,不适于随机存取
  • 可靠性问题: 若next指针出错,则文件访问失败
  • next指针占用一定的空间

串联文件的应用:FAT文件系统

9.3 FAT文件系统

FAT: File Allocation Table, 有FAT12, FAT16, FAT32

文件分配表

文件访问过程

  1. 访问文件目录: 找0块的块号i
  2. 访问FAT找下一块号,FAT(i)
  3. FAT(i)=FFFF文件结束

文件分配表的缺点

  • 读文件时,先读FAT,影响使用效率
  • FAT要占用存储空间(存储容量越大,存储块越多,FAT元素越多,且元素位宽越长,占用更多额外存储空间)

扇区

  • 磁盘上最小可寻址存储单元(512字节)

簇(cluster)=存储块

  • 设备的最小存取单元,固定数量的扇区

簇的例子

  • 360KB磁盘: 簇=2个扇区(1024字节)
  • 10MB硬盘: 簇=8个扇区(4096字节)
  • 2GB硬盘: 簇=64个扇区簇(32KB)

FAT元素数目和簇的数目一样多

磁盘容量=FAT长度✖簇容量=FAT长度✖簇扇区数✖512字节

9.4 文件存储和目录

存储空间管理

功能: 记录磁盘使用情况,管理和分配,回收存储空间

记录磁盘空闲块的方法: 空闲文件目录,空闲块链,位示图

空闲文件目录

空闲文件:  把连续空间区看成一个特殊文件,由多个连续空闲块组成

空闲文件目录

  • 所有空闲文件代表存储设备全部空闲空间
  • 为空闲文件建立的专门目录:空闲文件目录
  • 每个表项对应一个空闲文件,包括第一个空闲块号,空闲块个数等信息

空闲块链

  • 把所有空闲块链接在一起
  • 当申请者需要空闲块时,链头开始搜索所需空闲块
  • 当回收空闲块时,把释放的空闲块逐个加载链尾

位示图

文件目录管理

文件名址录,记录文件名和存放地址的目录表

具有将文件名转换为外存物理地址的功能

文件属性也记录在目录中

目录文件

文件目录以文件形式存于外存,这个文件叫目录文件

Linux的文件目录是一个典型树形目录结构

猜你喜欢

转载自blog.csdn.net/u010420283/article/details/114241241
今日推荐