正在加载图片...
2.常用的盘空闲区管理方法 (1)空白文件目录 盘空间上一个连续的未分配区域称为空白文件。系统为所有这些空白文件单独建立 个目录。对每个空白文件,在这个目录中建立一个表目。表目的内容包括第一个空白块地址 (物理块号)、空白块个数等。在进行存储空间的分配时,同样可采用首次适应、最佳适应等 算法:而回收时,同样要进行空闲区的合并。 这种方法的优点是空闲区的分配和回收都相当容易,但用来管理空闲区的空闲表需要 占用大量的存储空间。 (2)空白块链 该方法是将所有空白块用链接指针或索引结构把它们组成一个空白文件。释放和分配 空白块都可以在链首进行,只需要修改几个有关的链接字。本方法只要求在主存中保存一个 指针,令它指向第一个空白块。 这种方法的优点是实现简单;但工作效率低,因为每当在链上增加或移去空白块时需要 对空白块链做较大的调整,因而会有较大的系统开销 种改进方法是将空白块分成若干组,再用指针将组与组链接起来,将这种管理空白块 的方法称为成组链接法。这种成组链接法,在进行空白块的分配与回收时要比空白块链法节 省时间 (3)位示图法 位示图是利用二进制的一位来表示文件存储空间中的一个块的使用情况。一个m行、n 列的位示图,可用来描述m×n块的文件存储空间,当行号、列号和块号都是从0开始编号时, 第i行、第j列的二进制位对应的物理块号为i×n+j。如果"0"表示对应块空闲,"1”表示对 应块己分配,则在进行存储空间的分配时,可顺序扫描位示图,从中找出一个或一组其值为 0″的二进制位,将对应的块分配出去,并将这些位置1:而在回收某个块时,只需找到对应的 位,并将其值清0便可。 位示图法适合于所有的分配方式,它简单易行,而且位示图通常较小,故可将其读入内 存,从而进一步加快文件存储空间分配和回收的速度 (4)MS-D0S的盘空间管理 MS-DOS盘空间的分配采用文件分配表FAT;盘空间的分配单位称为簇(相当于块),簇的 大小因盘而异,每个簇在FAT表中占一个项。FAT表是一个简单的线性表,它由若干项组成 FAT表的头两项用来标记盘的类型,其余的每个项包含三个十六进制的字符;若为000,表示 空闲簇;FFF表示该簇是一个文件的最后一簇;若为其它任何十六进制字符,表示该簇是某 文件的下一簇号。 (5)UNIX文件存储空间的管理(成组链接法) 成组链接法是UNIX系统采用的空闲盘块管理方式。它将一个文件卷的所有空闲盘块按 固定大小(如每组100块)分成若干组,并将每一组的盘块数和该组所有的盘块号记入前一组 的最后一个盘块中,第一组的盘块数(可小于100)和该组所有的盘块号则记入超级块的空闲 盘块号楼中。 当系统要为用户分配文件所需的盘块时,若第一组不只一块,则将超级块中的空闲盘块 数减1,并将空闲盘块钱校顶的盘块分配出去:若第一组只剩一块且钱顶的盘块号不是结束 标记0,则先将该块的内容(记录有下一组的盘块数和盘块号)读到超级块中,然后再将该块 分配出去:否则,若楼顶的盘块号为结束标记0,则表示该磁盘上己无空闲盘块可供分配 在系统回收空闲盘块时,若第一组不满1∞块,则只需将回收块的块号填入超级块的空 闲盘块钱钱顶,并将其中的空闲盘块数加1:若第一组已有100块,则必须先将超级块中的空 闲盘块数和空闲盘块号写入回收块中,然后将盘块数1和回收块的块号记入超级块中,值得2.常用的盘空闲区管理方法 (1)空白文件目录 盘空间上一个连续的未分配区域称为空白文件。系统为所有这些空白文件单独建立一 个目录。对每个空白文件,在这个目录中建立一个表目。表目的内容包括第一个空白块地址 (物理块号)、空白块个数等。在进行存储空间的分配时,同样可采用首次适应、最佳适应等 算法;而回收时,同样要进行空闲区的合并。 这种方法的优点是空闲区的分配和回收都相当容易,但用来管理空闲区的空闲表需要 占用大量的存储空间。 (2)空白块链 该方法是将所有空白块用链接指针或索引结构把它们组成一个空白文件。释放和分配 空白块都可以在链首进行,只需要修改几个有关的链接字。本方法只要求在主存中保存一个 指针,令它指向第一个空白块。 这种方法的优点是实现简单;但工作效率低,因为每当在链上增加或移去空白块时需要 对空白块链做较大的调整,因而会有较大的系统开销。 一种改进方法是将空白块分成若干组,再用指针将组与组链接起来,将这种管理空白块 的方法称为成组链接法。这种成组链接法,在进行空白块的分配与回收时要比空白块链法节 省时间。 (3)位示图法 位示图是利用二进制的一位来表示文件存储空间中的一个块的使用情况。一个 m 行、n 列的位示图,可用来描述 m×n 块的文件存储空间,当行号、列号和块号都是从 0 开始编号时, 第 i 行、第 j 列的二进制位对应的物理块号为 i×n+j。如果"0"表示对应块空闲,"1"表示对 应块己分配,则在进行存储空间的分配时,可顺序扫描位示图,从中找出一个或一组其值为 "0"的二进制位,将对应的块分配出去,并将这些位置 1;而在回收某个块时,只需找到对应的 位,并将其值清 0 便可。 位示图法适合于所有的分配方式,它简单易行,而且位示图通常较小,故可将其读入内 存,从而进一步加快文件存储空间分配和回收的速度。 (4)MS -DOS 的盘空间管理 MS-DOS 盘空间的分配采用文件分配表 FAT;盘空间的分配单位称为簇(相当于块),簇的 大小因盘而异,每个簇在 FAT 表中占一个项。FAT 表是一个简单的线性表,它由若干项组成。 FAT 表的头两项用来标记盘的类型,其余的每个项包含三个十六进制的字符;若为 000,表示 空闲簇;FFF 表示该簇是一个文件的最后一簇;若为其它任何十六进制字符,表示该簇是某 一文件的下一簇号。 (5)UNIX 文件存储空间的管理(成组链接法) 成组链接法是 UNIX 系统采用的空闲盘块管理方式。它将一个文件卷的所有空闲盘块按 固定大小(如每组 100 块)分成若干组,并将每一组的盘块数和该组所有的盘块号记入前一组 的最后一个盘块中,第一组的盘块数(可小于 100)和该组所有的盘块号则记入超级块的空闲 盘块号楼中。 当系统要为用户分配文件所需的盘块时,若第一组不只一块,则将超级块中的空闲盘块 数减 1,并将空闲盘块钱校顶的盘块分配出去:若第一组只剩一块且钱顶的盘块号不是结束 标记 0,则先将该块的内容(记录有下一组的盘块数和盘块号)读到超级块中,然后再将该块 分配出去:否则,若楼顶的盘块号为结束标记 0,则表示该磁盘上己无空闲盘块可供分配。 在系统回收空闲盘块时,若第一组不满 1∞块,则只需将回收块的块号填入超级块的空 闲盘块钱钱顶,并将其中的空闲盘块数加 1:若第一组已有 100 块,则必须先将超级块中的空 闲盘块数和空闲盘块号写入回收块中,然后将盘块数 1 和回收块的块号记入超级块中,值得
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有