DOS利用FAT来管理磁盘数据区空间,因为FAT包含了磁盘文件数据区哪个簇属于哪个文件,文件的存放顺序以及该区使用状态的全部信息。这里簇(CLUSTER)是文件数据区被分成的具有相同大小的小区域,用作磁盘文件计量分配单位,一个簇可能包括1、2、4、8、16、32、64,或128个逻辑扇区,但在一个给定的磁盘格式中,这个扇区数是固定的,且是2的幂,常存放在引导扇区的偏移0D处。表2.5给出几类磁盘每簇扇区数的具体值。
表2.5 磁盘每簇扇区数
文件数据区按簇顺序从0开始依次偏号,前两个簇号0和1被保留,用以说明磁盘性质和规格,从2开始按逻辑扇区连续阵列方向编号,每簇扇区数由BPB指定。为管理这些簇号所代表的磁盘空间:FAT中也划分成与簇号直接对应的很多登记项,用以说明该项所表示的簇的当前使用状态;可使用、保留、已分配或不可用(损坏)等;FAT登记项在DOS版本1和2中占12位长(1.5字节),在DOS版本3中占16位长(2个字节)。12位长能表示的簇号是2的12次方,为4096,适用15M以内的磁盘,16位长能表示的簇号2的 16 次方,为65536,适用于32M以内的磁盘。12位长的FAT,以三个字节表示两个表项,且表项内容按下图所示的“扣状”存放;16位长的FAT,以二个字节表示一个表项,表项内容按低字节在前、高字节在后的规律存放。图2.2表示出FAT表项的构成。
图2.2 FAT表项的构成
(a)12位长FAT表项的组成;(b)16位长FAT表项组成
现将这两个FAT登记项表达的意义列于表2.6中。(www.xing528.com)
表2.6 12位与16位长FAT登记项表达的意义
FAT表有一个两项的表头,当用12位登记项时,表头占三个字节,16位登记项时,表头占四个字节,但它们的第一字节都作为介质描述字节,用以说明磁盘的,第二、三和四字节都恒为FF值。介质描述字节内容记载在引导扇区偏移15H处。具体内容也可参看表2.2。表2.7给出目前IBM定义的各类磁盘的介质描述符。
表2.7 IBM定义的各类磁盘的介质描述符
FAT表从第三项即簇号为2开始,每一项用三位或四位十六进制数用来表示盘的数据空间的分配状况,其值的含义见表2.6所示。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。