硬盘的物理磁头数量和逻辑磁头编号

【问题】

     在解释物理磁头和逻辑磁头之前,先列举这样一组数据:

    Cylinders          Heads           Sectors

     2491                255               63

    硬盘的容量=2491x255x63x512=19.08G

    上面的参数是从一个金钻20G硬盘上得到的。很明显它的柱面数是2491,磁头数是255,每个磁道上的扇区数为63。误会由此开始了,如果我们对硬盘的物理结构不了解,我们会认为这个硬盘有255个磁头。可是仔细想一下,便会发现它不成立。

    一张单面的盘片需要一个磁头,双面的盘片则需要两个磁头,假如全部都是双面盘片,255个磁头至少拥有128张盘片,而128张盘片叠起来的厚度比一个硬盘要厚的多,这还没有考虑盘片之间的间隙。

    其实我们在BIOS中看到的硬盘的参数只是一个逻辑值现在的硬盘大部分都是单碟,单磁头。拿金钻九代80G来说,就是单碟的。也就是说它只有一个磁头。

    可是为什么我们用测试软件检测的时候会显示255个磁头呢?答案要从很多年前说起了。

    提示:主要是由于硬盘标准制定初期,柱面、扇区和磁头的参数设置允许长度不合理,后期为了能够实现大容量硬盘,就将这三个参数张冠李戴了。就造成物理参数和逻辑参数不一致的问题。

 

【推荐文章】

    在网络发现了几篇文章,基本让我茅塞顿开。供大家借鉴。

    1)细说IDE硬盘的容量限制  

    http://www.rebios.net/hd/hd.htm

 

    2)(原文太多,这里仅仅摘录部分相关内容)

    http://bbs.cfan.com.cn/thread-724319-1-1.html

    由于BIOS和硬盘接口规范(ATA)对硬盘容量的限制而引起的硬盘识别问题,在历史上出现过许多次,其中比较有名的有以下5个:
  
  ☆事件1:“504MB限制”

  第1次容量限制大约出现在1994年,即著名的“504MB限制”。硬盘的识别受两方面影响,一是BIOS中的Int 13h(硬盘读写中断,后面把它看作一种规范,便于理解和表述),另一个是ATA(IDE)寄存器组的各个参数——CHS(Cylinder、H、Sector,即柱面、磁头和扇区)。这些限制类似“木桶效应”,只有它们都能认同的参数,最后才能得到确认。
  
  限制类型 柱面 磁头 扇区 总位数
  Int 13h 1024(10位) 256(8位) 64(6位) 24位
  ATA 65536(16位) 16(4位) 256(8位) 28位
  
  Int 13h限制硬盘可供存储数据的最大柱面数、最大扇区数分别为1024和63;与此同时,ATA最大磁头数为16,两类限制相叠加后所出现的容量限制就是1024×16×63×512(每扇区的字节数)/1024×1024=504MB,那个时候估计很少有人能想像到,我们现在会拥有上百GB的硬盘空间吧。
  
  解决办法:

  如果你还拥有如此古老的主板,恭喜你!它的纪念意义远超过使用价值,还是封存起来吧,我想你也不会把100GB的硬盘装在它身上。
  

        ☆事件2、3:“2GB和8GB限制”

  Int 13h支持256个磁头(8位,2的8次方),台式机硬盘不可能有那么多磁头,于是有些BIOS在逻辑上把它“削减”为64个(2的6次方),由于定义整个结构的位数(Bit)不变,“省”下的寄存器就给了柱面数(2位,也就是原最大柱面数×4,扩展为4096个柱面,注意这仅是逻辑上的替换),于是就有了4096×16(64个磁头还是太多了)×63×512/1024×1024=2014MB,也就是“2GB”限制。

  随着技术的发展,硬盘容量在短时间内得到突破,上面提及的“逻辑转换”解决方法很快走到了尽头。而Int 13h规范最大容量为7.88GB,如果以1 000 000Bytes=1MB计算(硬盘厂商们通常就是这么算的)就是8.4GB,很多朋友都经历过这一“8GB限制”,它是Int 13h留给人们最后的遗憾。
  
  解决办法:

  事件2发生在1996年,当时通过软件方式解决了这一问题,不过那时是800MB硬盘横行的时代,2GB的硬盘少之又少,因此问题也不了了之。这之后2年左右出现的“8GB限制”可通过升级BIOS及使用新的分区软件解决,这一惯例也延续至今。对于这类主板,我们建议还是放弃的好,毕竟将大容量高速度硬盘用在它们身上不仅不匹配,也是对性能的浪费。
  
  ☆事件4:“32GB限制”——主角登场

  虽然Int 13h已得到扩展,支持多于1024柱面的硬盘,但奇怪的事情发生了,部分主板的BIOS竟然只支持63个扇区,难道进化没有完全?这样最后计算的结果是32.3GB,“32GB限制”让众多拥有40GB以上容量硬盘的朋友痛苦不已,这是很多1999~2000年出厂的主板(BX、Apollo Pro/Apollo Pro 133……)所特有的问题,它们目前依然占据着很多机箱的相应空间,其整体性能(综合处理器、内存、显卡……)依然能满足办公打字、观赏VCD、玩一般2D游戏等需求,如何延续它们的生命成了重要话题,因此也成为本文的重点照顾对象。
  
  解决办法:

  添置最新的IDE控制卡可完美解决这一问题,但这需要额外开销,不到万不得已没有必要。

  优先解决方案的应该是升级BIOS,知名主板厂商往往会推出成熟的BIOS,以支持大容量硬盘,一般情况131GB以下的硬盘应该没什么问题。至于如何升级BIOS,这里不再赘述,请参考相关资料。

  那些无法刷新BIOS的用户并不意味着走上绝路,各大硬盘制造商都提供了相关软件,用以接替BIOS工作(支持大硬盘的关键),对硬盘进行管理,常见的有Disk Manager 2000(IBM)、DiscWizard Starter Edition(希捷)、EZ-Install(西部数据)、MaxBlast PlusⅡ(迈拓)。从某种角度看,它们和一些电脑病毒有点类似:在电脑启动时拦截BIOS中断(Int 13h)并取而代之,这些工作都在“BIOS载入后、操作系统引导前”完成。

  从功能及易用性角度考虑,这里我们以MaxBlast PlusⅡ为例(下载链接为:
http://file2.mydrivers.com/disk/mbplus21.exe),向大家详细讲解如何让你的硬盘爆发最大功效(MaxBlast,名字取得很贴切呀)。

  对于那种BIOS能识别、但使用不正常的情况,可尝试把硬盘先接到其他电脑上进行分区(分区大小不可超过BIOS可辨识范围),然后在本机上安装操作系统的“曲线救国”方式,成功几率也非常大。

  如果还是无法正常使用,上面提及的“32GB”限制跳线就是最后的救命稻草,前提是主板可辨认32GB的“小”硬盘(2000年前后出厂的主板应该没问题),操作步骤如下:在其他电脑上先分好区,每个分区容量不得大于32GB,按“32GB”方式进行跳线,然后安装Windows 2000/XP,操作系统可自己识别出全部的硬盘空间;虽然BIOS只把硬盘当作32GB的,但无关紧要,并不影响使用。
  
  ☆事件5:

  随着新的“恐龙级”硬盘的出现(比如西部数据推出的250GB产品),另一个BIOS瓶颈已来临:目前的28位ATA规范将硬盘最大容量限制为65536×16×255×512/1024×1024=131GB,按硬盘厂商的算法就是137GB,这个限制已开始影响部分新用户了。

  解决办法:

  新的ATA标准早已出台,48位的ATA规范为未来的大容量硬盘铺平了道路,由微软、康柏和迈拓联合支持的Big Drives规范,支持容量高达144 155 188GB的硬盘(数一数,看有多少位数字,不知够不够我们用到下个世纪)。不过受目前32bit操作系统影响,目前的系统暂时只能支持到2200GB。大多数新主板都支持这一规范,以下是部分支持这一规范的南桥芯片:Intel ICH/ICH2/ICH4/ICH5、VIA VT8233A/8235及以后、SiS 961及以后等,采用这些南桥芯片的主板,只要刷新BIOS就可完美支持Big Drives。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值