美文网首页
第 七 、八 章 文件与磁盘空间管理

第 七 、八 章 文件与磁盘空间管理

作者: i_2c86 | 来源:发表于2018-12-08 23:04 被阅读0次

    文件管理:把所管理的程序和数据组织成一系列的文件,并能进行合理的存储、使用等操作。

    1 )基本概念

    数据项:描述对象某种属性的字符集;是数据组织中可以命名的最小逻辑数据单位。

    记录:一组相关数据项集合,描述对象某方面的属性;

    关键字:一个记录中的一个或几个数据项的集合,用于唯一的标识一个记录。

    文件:由创建者定义的、具有文件名的一组相关元素的集合。

    无结构:字符流的形式有结构:由相关记录组成

    属性:类型、长度、物理位置、创建时间

    文件读/写操作 = 检索 + 读/写。

    每次读写前都要重复检索增大开销。所以为了方便对同一文件的多次读写,一次检索到文件后就在内存中记录其位置,避免重复检索。被记录下位置的文件就是“打开”文件;

    不需要再操作文件时,通过“关闭”这个系统调用关闭文件——即从打开文件表上删除其路径信息即可。

    2、文件的逻辑结构

    文件系统设计的关键要素:如何构成一个文件,以及如何存储在外存。

    文件结构:

    文件的逻辑结构file logical structure:按用户观点如何组织数据;又称文件组织file organization

    基本要求:检索速度高、方便修改、降低存储空间费用(不连续)

    文件的物理结构:根据外存上的物理块的分配机制,记录文件外存的存储结构。用户感知不到的。

    3、外存分配方式

    目标:有效利用外存空间,提高文件访问速度

    常用三种方式:

    连续分配

    链接分配(不连续)

    索引分配

    通常一个系统中仅采用一种方式

    采用的磁盘分配方式决定了文件的“物理结构”

    顺序结构;链接式结构;索引式结构。

    注意与逻辑结构名类似但不是一回事。

    FAT表的相关计算

    MS-DOS文件分配结构为例:

    一个1.2M的磁盘,盘块512B大小;若文件系统采用FAT格式,则FAT表大小如何?

    表项个数 =  盘块个数

    =  容量 / 盘块大小 = 1.2 *220 / 29 = 1.2 *211 个

    表项大小,决定于盘块数量编号需要的位数=12 位;

    FAT表大小 = 表项个数 * 表项大小 = 1.2 *211 * 12 bit= 1.2 *211 * 1.5B = 3.6KB

    以半字节(0.5B=4b)为基本单位,表项需12位(1.5B)

    4、存储空间的管理

    为实现存储空间分配,系统需要:

    记住空闲存储空间使用情况;为空间设置相应的数据结构;

    提供对存储空间分配、回收的操作手段。

    典型的管理方法:

    1)空闲表和空闲链表法

    2)位示图法

    3)成组链接法

    5、目录管理

    文件控制块—FCB

    为了能对一个文件进行正确的存取,必须为文件设置用于描述和控制文件的数据结构,称之为“文件控制块”(FCB)

       文件与文件控制块一一对应

       记录文件名及其存放地址、文件的说明和控制信息。(是谁?在哪里?什么权?)

       文件管理程序借助于文件控制块中的信息对文件施以各种操作。

    把文件控制块的有序集合称为文件目录,即一个文件控制块就是一个目录项。通常一个文件目录也被看作是一个文件,称为目录文件。

    6、文件共享与保护

    1)文件共享

    多个用户共享一份文件,只保留文件的一份副本,节约存储空间

    提高磁盘I/O速度的途径:

    磁盘高速缓存(内存中,磁盘块的副本)

    提前读(每次访问磁盘,多读入一些磁盘块 )

    延迟写

    优化物理块分布(可能顺序存取的块放在一起 →尽量分配在同一柱面上)

    虚拟盘(内存模仿磁盘)

    磁盘冗余阵列(高速、大容量磁盘系统,并行交叉存取)

    高速缓存与缓冲区的对比

    相关文章

      网友评论

          本文标题:第 七 、八 章 文件与磁盘空间管理

          本文链接:https://www.haomeiwen.com/subject/mqichqtx.html