介绍分区表之前,大家要先准备一些硬盘存储的基础知识,有这么几点:
一 进制转换
分区表中会用到二进制,16进制和10进制,大家要熟悉它们之间的转换,例如16进制的3F等于10进制的63等于二进制的111111。好在现在有计算器可以用,心算没把握就用计算器好了,所以进制转换相对不算难。(图1)
二 常用存储单位
1K=1024字节=210 字节
1M=1024K=220 字节
1G=1024M=230 字节
1个扇区=512字节
介绍这些是因为分区表中表示分区大小是用扇区表示,也就是说分区表中只会说这个分区有多少个扇区,而不会说有多少G,多少M,因此我们要习惯进行存储单位转换。例如分区表中描述分区大小是 72 A1 A9 03,首先你要明白这四个字节是高低位颠倒的,高位在后,低位在前,真正的分区大小是 03 A9 A1 72。然后我们把16进制转为10进制,这样就知道了这个分区大小是 61448562扇区,换算为字节就是61448562×512=31461663744。然后除以2的30次方,就可以知道分区的大小是 31461663744/ 230 =29.3 G。 三 扇区定位硬盘中有数以亿计的扇区,如何才能准确定位到每一个扇区呢?一般用C/H/S和LBA两种方法。这两种定位方法都很重要,我们来好好看看。
C/H/S指的是利用柱面/磁头/扇区这三个参数来定位扇区,有的资料说C/H/S指的是磁道,磁头和扇区,这就不准确了。磁道是硬盘盘体上的同心圆,每个磁道上排列了63个扇区,盘体最外圈为0磁道,从外圈向内圈编号逐步加大。由于一块硬盘有多块盘体,因此硬盘可以看作是一个圆柱体。这时就看出用磁道定位不妥的地方了,磁道显然是只适合在二维空间定位,不适合在三维空间中表示准确的坐标。柱面就没有这个问题了,柱面是所有盘体上磁道的集合,例如0柱面指的是所有盘体上的0磁道所组成的一个圆柱体。这下您肯定明白了,原来磁道是二维的圆,柱面是三维的圆柱。
一个柱面包含了若干磁道,如何来准确表示柱面中的具体磁道呢?这时就可以使用磁头参数了。每个磁头负责读取柱面中的处于不同高度的磁道,我们只要给出具体的磁头数值,就知道对应柱面中的哪个磁道了。这样我们根据柱面和磁头两个参数就可以准确地定位到盘体中的某个磁道,一个磁道上有63个扇区,我们只要再知道扇区的编号,就可以完成在三维空间中定位扇区的任务了,C/H/S三个参数就是这样定位扇区的。
柱面编号从0开始,每个柱面有255个磁头,编号从0到254,每磁道有63个扇区,编号从1到63。有朋友问:难道硬盘中真的有255个磁头吗?当然不是,硬盘中的磁头很少会超过4个,真正硬盘的每个磁道也不是都有65个扇区。每柱面255磁头每磁道63扇区这种模型只是为了研究问题方便而人为规定出来的,就象我们规定每小时有60分钟而每分钟有60秒那样。虽然柱面中的磁头数量和实际不符,但由于硬盘中有一个地址翻译器,可以将标准模型中的CHS参数转换为硬盘实际的CHS参数,因此我们用C/H/S定位扇区是没有问题的,这就象可以从阴历的日期转换为阳历的日期。
柱面是研究分区非常重要的一个参数,分区以柱面为粒度。这话怎么理解?操作系统分区时要考虑柱面因素,分区总是结束9 7 3 1 2 3 4 8 :
本文来源:不详 作者:佚名