一、基本概念
1.要将文件保存到外部存储器(外存或辅存),首先得知道存储空间的使用情况 2.要清楚哪个物理块 已经被占用 ,哪个物理块是空闲 的 3.当对大容量的磁盘存储空间被多用户共享时,用户执行程序经常要在磁盘上存储文件和删除文件,所以文件系统需要对磁盘空间进行管理。例如A和B两个用户操作同一台机器,A和B同时存储文件,两个文件存到磁盘上不能同时存到同一个物理块 4.外存空闲空间管理的数据结构被称为磁盘分配表(Disk Allocation Table) 5.常用的空闲空间的管理方法有空闲区表,位示图,空闲块链和组链接法。 6.计算机字长是指计算机中用于表示和处理数据的二进制位数。现在市面上的计算机处理器大部分已达到64位,少部分是32位
二、位示图
1.在外存建立一张位示图(Bitmap)来记录文件存储器的使用情况 2.每一位对应文件存储器上的一个物理块 ,用0和1分别表示空闲和占用,(0表示空闲,1表示占用) 3.举个例子:某文件存储器上位示图的大小为n(表示为n个字),物理块依次编号为0,1,2,…。假如一个字的长度为32位(字长为32位,即32bit位),那么位示图中第0个字对应文件存储器上的0 ~ 31号物理块,第1个字对应文件存储器上的32 ~ 63号物理块 4.位示图的大小由磁盘空间的大小(物理块总数)决定,描述能力强,适合各种物理结构 5.图示
三、例题
3.1 例题1
1.某文件管理系统在磁盘上建立了位示图(bitmap),记录磁盘的使用情况。
若磁盘上物理块的编号依次为0、1、2、...;系统中的字长为32位,
位示图中字的编号依次为0、1、2、...,每个字中的一个二进制位对应文件存储器上的一个物理块,
取值0和1分别表示物理块是空闲或占用。假设操作系统将2053号物理块分配给某文件,
那么该物理块的使用情况在位示图中编号为()的字中描述
A. 32 B. 33 C. 64 D. 65
字长为32位,表示一个字可以记录32个物理块,2053/32=64.15625,则需要65个字,
字的编号是从索引为0开始的,所以字编号范围是0~64,
因此在位示图中编号为64的字中描述2053号物理块是否是空闲或占用。
3.2 例题2
2.某字长为32位的计算机的文件管理系统采用位示图(bitmap)记录磁盘的使用情况。
若磁盘的容量为300GB,物理块的大小为1MB,那么位示图的大小为(D)个字。
A.1200
B.3200
C.6400
D.9600
1.磁盘的容量为300GB,物理块的大小为1MB,则磁盘共300x1024/1个物理块。
2.字长为32位,1位表示1个物理块是否占用,则位示图的大小为300x1024/(32)=9600个字。