硬件收藏论坛

标题: 华硕TX97系列主板与IBM-41G硬盘配合失败的实验报告 [打印本页]

作者: LEO    时间: 2004-1-29 17:26     标题: 华硕TX97系列主板与IBM-41G硬盘配合失败的实验报告

转自   蓝色戈壁网   http://z80.wx-e.com/myopus/dm_tx97.htm#SetDriveSize

华硕TX97系列主板与IBM-41G硬盘配合失败的实验报告

文/一叶


--------------------------------------------------------------------------------

主机主要硬件配置

华硕TX97-E主板
IBM-DTLA-305040硬盘
BIOS版本:Aword V4.51PG --- 0107e;0108e;0112e-1

软件工具
程一的DM万用版分区工具,V9.55版

实验目的
试图找出能在华硕TX97系列主板上,正常使用IBM-41G硬盘的配合方式

   通过查阅华硕网页上的有关资料可知,TX97系列主板的BIOS版本,只是副版本(这样写也不知对不对)号不同而已,通用性似乎还不错。比如0112e-1版,实际上是TX97-L主板的。放在TX97-E上用,也很正常,还增加了一些功能。我看了一些做“驱动更新”的网页,都直接把0112e-1写成是TX97-E的BIOS升级版。可见这种通用性是公认的,所以我认为以下的实验可以通用于TX97系列主板。

实验步骤及其结果

基础条件1:在BIOS版本112e-1下。COMS里的硬盘类型设置为none和auto各通电一次。

1、硬盘跳线为“正常”主盘方式,通电检测,结果在系统检测到硬盘时死机。

2、IBM的本款硬盘,在“正常”方式下,共提供了8组跳线模式。用这些模式逐一通电检测,结果大部分在系统检测到硬盘时死机。这些实验,由于硬盘不能通过系统检测,故无法使用DM工具。

3、硬盘跳线设置为“强制32G”方式,这种方式IBM也提供了8组跳线模式。其中有3种模式通过检测。

基础条件2:在BIOS版本112e-1下,选择“强制32G”主盘方式。

1、COMS中硬盘类型设置为none,系统顺利启动。利用DM检测,报告发现一个30G的硬盘。在DM的“维护选项”“实用工具”选项里,可以看到允许的最大扇区是6....换算下来正好是32G。在下面的修改选项里,标出的是30G的扇区数。如果修改为最大扇区数,没有问题;但你想超出这个最大扇区数,软件就会报告出错。

选最大扇区数、分区、格式化、此时,DM报告的硬盘容量是33.8G,看来情况不太妙。硬盘写入DDO驱动,退出DM程序,重新启动,在COMS里把硬盘类型设为auto。再启动,系统报告找到硬盘,容量33G。转入硬盘引导,出现有名的DDO蓝色提示屏。用刚才在DM里制作的能识别大硬盘的软盘继续引导,从光盘里装入win98。

启动win98,在“资源管理器”中大概看看硬盘的容量,还是33G。由此看来,在DM里分区的时候,就应该知道硬盘的容量了。仔细想想也是,分区都分过了,让DDO怎么可能再去增加容量!

2、COMS中硬盘类型设置为auto,系统启动时报告找到33G硬盘。以后的过程同上,结果也一样。

基础条件3:更换BIOS版本为0108e,重复前面的实验。

  结果与前面的实验相同。实际上这个版本是TX97-E的第二个,也是最终版本。

基础条件4:更换BIOS版本为0107e,硬盘跳线为“正常”主盘方式。

1、按照IBM提供的方法,先在COMS里将硬盘类型设置为none。通电检测,系统自检通过——有点意思,在此前用这种跳线方式,从来就没有通过系统自检——运行DM软件,报告说发现一个30G的硬盘。为什么总是发现这样大小的硬盘呢?没工夫研究它,赶紧往下看。在DM的“维护选项”“实用工具”选项里,可以看到允许的最大扇区已然是80418240个了。不用算,这准是41G的数!修改成最大允许扇区,转到“编辑、查看分区”选项,久违了的41G赫然出现在眼前。难道成功了吗?分区、格式化、按提示尽快做完硬盘上的工作。

  将COMS里的硬盘参数改为auto。重新启动,启动画面停留在检测第一主硬盘上......键盘失去控制!失败!一个小小的BIOS虫,粉碎了我心中刚刚升起的一点点喜悦。

2、将COMS里的硬盘类型设置为auto,重复前面的实验,结果也是失败。

3、我彻底失去信心,下边设计的实验也不用做了。

基础条件5:更换BIOS版本为0112e-1。

1、找一台支持大硬盘的机器,硬盘跳线为“正常”主盘方式,用fdisk先将硬盘分好区:C盘2G,FAT16小分区,可以兼顾较老的DOS;剩下的做成FAT32扩展分区。算算容量,自然是41G(心态不大正常了)。

2、硬盘装回本机,跳线改为“强制32G”主盘方式。利用COMS里的硬盘自动寻找方式找出一个user的33G大小的硬盘。就是它了,认命吧。重新启动,用fdisk将剩下的扩展分区分一下逻辑区。就按8G分吧,8G也是一个坎,超过了这个数,保不住哪位大爷软件不认帐呢。算算硬盘容量,还够数(看着心里好受些)。最后一个分区有5G多,格式化一下试试?不行,系统不认。没关系,分区都分成了,应该有办法。把最后一个分区改成8G,让它跨在33G界限的两边。成了,这一招不知把谁给骗了,反正通过了格式化。

装win98系统、进入win98操作系统、检查最后一个分区H盘,用完全扫描的方式彻底检查。好长的等待时间!算了,改成标准扫描吧。完成了,没有报错。拷几百M文件试试?好像没问题,心中好不得意,就这么用吧。

直到有一天,往H盘里拷贝一个3G的文件包,拷贝过程中系统突然出来一个蓝屏警告,大意是说发现了一个系统不认识的文件。虽然我知道windows系统的蓝屏警告是出了名的爱说糊涂话,但这一次还是把我给蒙住了。因为确实有几个刚拷入的文件删不掉。后来就是格式化、删文件等等,就不用提了。做了几次后发现规律了——拷贝时总是在拷到1G附近的一个特定的长度出错!算算剩余的容量,正好在33G的门坎上。天!这到是真应了那个古老的“狐狸吃葡萄”的故事了......回过头来再做一次磁盘扫描,这次用完全扫描、不纠错模式。果然在扫描到250524簇的时候,开始报告扇区读写错误。算算长度,和拷贝文件时的一样!

这也解消了我留存在心中很长时间的一个疑问——在市面上刚刚出现大硬盘的时候有报道说,如果在安装大硬盘时没有处理好,会出现假坏道现象。当时让我不解的是,这种坏道在开始的时候还不出现,直到使用过一段时间后才开始出现。那算不算物理损伤呢?现在看来简单了,那自然是发生在某一个门坎上的事情。门坎前是好的,过去之后就坏了。

3、想想还是不死心,或许装上DDO就行了呢。保护好win98后,强行在硬盘上装入DDO。重新启动后出现DDO的蓝色版权界面、转入windows引导、windows操作系统加载成功。再试试拷贝H盘,出错了!

结论

1、按IBM的说法,应该更新BIOS,这不是废话吗?

2、在这样的特定配置下,如果没有支持大硬盘的BIOS升级版更新系统,硬盘只能使用“强制32G”方式。使用“正常”方式将造成系统自检时死锁——无论你用DM对硬盘做过何种改造,都不能起作用。

3、在当前的DM本版和当前配置的条件下,只要硬盘使用“强制32G”方式,DM就无法突破32G的限制。

4、等待IBM新的DM软件版本,看他能不能解决老BIOS内部的这个棘手问题。

几点思考

配制硬盘花了这么多工夫,最终还是失败了。这使我象许多做过这件事情的网友一样,陷入了深深地思考之中。如何找回丢失的硬盘空间?究竟问题出在什么地方呢?让我们试着分析一下。

1、无论何种IDE硬盘,都必须通过ATA接口向BIOS传送标准信号,这种信号有固定的格式。也就是说,任何型号的IDE硬盘,在其“正常”跳线方式下,输出的信号都可以被别的设备正确识别。

2、由于这个版本的BIOS不能识别32G以上的硬盘,显然它里面固化的INT13中断例程是旧的标准,因为扩展的INT13中断支持130多G的硬盘空间。当然,无论新、旧标准,它们都有一个固定的格式。我们知道,这种格式是公认的,不能修改的。

3、但是我们还知道,旧的INT13中断最大只能管理8G硬盘空间,硬盘超过8G怎么办?不知道。我想大概制做BIOS的公司,都会各自写自己的新INT13例程,甚至连一些主板厂商也参与了改写。如此肯定会出现一段混乱时期,直至出现统一的扩展INT13中断标准,正是这段时间出品的BIOS,给我们这些口袋里不太有钱的DIY们,出了一个大难题!

4、好,总结一下:操作系统和硬盘互相交换数据,需要通过两个关口——一个是INT13中断,另一个是ATA端口。它们都有各自的标准,是固定的。ATA标准没有问题,它能支持很大的硬盘。问题就出在那个旧的INT13中断上。

5、想象一下:当初这款华硕主板上市的时候,主流配置的硬盘也不过2、3G,6G的硬盘都少见。自然写BIOS的公司也可以偷偷懒,对付着能让系统认出这些硬盘就得了,反正将来还能升级。而写这款主板BIOS的公司,更是用了一个高招——他和别人写的都不一样。当然,我们不知道这个INT13程序段的具体内容,但现实的情况是——许多不支持大硬盘的主板,都可以设法解决对大硬盘的支持,而唯独这个不行,你说高不高?

6、由以上分析可知,由于本款主板BIOS里的服务程序段有先天缺陷,导致硬盘在“正常”跳线方式下,系统启动到检查硬盘参数时发生混乱,导致系统死锁,从而使DM软件英雄无用武之地!

怎样解决问题

1、最好的办法当然是大家一起去要求华硕升级BIOS,毕竟我们是消费者,是不是?不过这一招似乎不太灵。

2、要不就呼吁哪位高手出山,改改BIOS?

3、再不就去好好翻翻别的老华硕主板的BIOS,没准哪一个就能用。

最后提醒大家,不用想着去找一个新的、支持大硬盘的升级程序去刷你的老BIOS,因为老BIOS的“个头”有点小,放不下新程序。

编发日期:2001.9.8          
作者: LEO    时间: 2004-1-29 17:26

编后

  自从DM万用版推出以来,特别是突破32G容量极限的DM9.94和DM9.55以后,许多网友都下载和使用DM,来解决大硬盘在老主板上的兼容问题,并且收到了良好的效果。在上海的电脑之家(www.pchome.net)的软件下载中,DM万用版在硬盘工具类软件中名列前矛。
  但是根据网友的来信和一些网页论坛上反映的情况看,特定的主板/硬盘组合会造成一些问题,特别是使用IBM大硬盘的时候。和MAXTOR星钻40G等大硬盘不同,IBM大硬盘如果使用容量限制跳线,则分区后DM虽然分区可以完成,但后面大于32G的容量仍然无法使用。由于DM万用版是以IBM DM为核心,出现这样的问题的确很奇怪。
  该文即是讨论华硕TX97系列主板与IBM-41G硬盘组合的一篇文章。

  从讨论中我们大致可以得出如下结论:
  1、只要文中提到的IBM大硬盘进行了容量限制跳线的设置,硬盘的全部容量就不可能被全部使用。
  2、“基础条件4”的实验在使用全部容量上最接近(可惜只是接近)成功。

  文中提到的DM的一个用法可能对初学者不会操作,详见《DM万用版FAQ》,这里给出步骤:
  按照DM中的联机帮助,“Set Drive Size”的作用是告诉硬盘,向主板BIOS报告自己的全体扇区数时不要超过BIOS的极限,而正是这个极限导致机器在自检中死机。
  “Set Drive Size”的使用步骤是:
  1、进入CMOS,在硬盘设置上选“NONE”。这样开机中不会死机。同时IBM大硬盘不要使用容量限制跳线。
  2、重启后运行DM(有可能DM在此CMOS设置下启动会需要1、2分钟的时间,耐心等待)选择“Set Drive Size”,使用DM建议的设置数值。
  3、重启再次进入CMOS,将第1步中的设置由“NONE”改为“AUTO”。
  4、重启后,运行DM来对硬盘分区。
  “Set Drive Size”的调出的方法是(A)dvanced Options -> (M)aintenance Options -> (U)tilities -> Set Drive Size。

  针对IBM大硬盘的死机问题,《DM万用版FAQ》和本文都认为“Set Drive Size”是一个有希望的方法,因此我想有必要将其在DM联机帮助中的原文列印如下:

Set Drive Size is a utility that is intended to be used as the first step of a
solution to a BIOS limitation found on some computers. A BIOS that exhibits
this limitation will lock up during POST when a drive with a capacity over a
certain size (e.g., 33GB) is connected to the system. To get through POST
without locking up, use this utility to instruct the drive to report a Total
Sectors value that is smaller than the limitation of the BIOS.

The second step of this solution is to run Disk Manager to install the drive.
Disk Manager will recognize that the drive's true capacity is bigger than the
drive is reporting and will install a Dynamic Drive Overlay on the drive. The
Dynamic Drive Overlay will support the drive to it's true size.

Because the system locks up when booting with the large drive connected to the
computer, using the Set Drive Size utility on the drive is somewhat paradoxical.
In order to get your system to a state that allows you to utilize Set Drive
Size, there are a few possible approaches:

The best approach is to temporarily connect the drive that causes the BIOS lock
up to a computer that does not exhibit this limitation. Then run Disk Manager,
select this Utility option, and use the suggested Total Sectors Setting. Once
Set Drive Size is successfully used, power down the system, remove the drive,
and return it to the computer with the BIOS limitation. Boot the computer to the
Disk Manager diskette and install the drive. You should not have to use the
second computer again.

Another approach that may work involves 4 steps:
1. Enter CMOS on the machine with the limitation. Select "None" for the
drive in question. This setting will prevent the computer from hanging
during POST at the expense of the BIOS not supporting the drive.
2. Reboot and run Disk Manager. Disk Manager may take a minute or two to
initialize with CMOS set this way (please be patient). Select the
"Set Drive Size" utility for the drive in question and use the suggested
setting.
3. Reboot and enter CMOS again. Select "Auto" for the drive that was set
to "None" in step one.
4. Reboot again and run Disk Manager to install the drive. You should not
have to repeat these steps again.

If your CMOS does not allow you to use the suggested settings, then you will
need to either use the first approach or experiment with different
User-definable CMOS settings until you are able to boot the computer without
locking up.

If your computer continues to lock up during POST, you may have a machine with
a BIOS limitation at a capacity less than 33GB. The smallest BIOS limitation
that will cause your machine to lock up due to drive size is at 2.1GB, which
corresponds to 4128768 Total Sectors. Try using this value when you use the
Set Drive Size utility.

Note: If your hard drive has a jumper to limit the size of the drive,
do NOT use the jumper when utilizing this solution. Using Set Drive Size
with the jumper installed will have no effect on the drive when the jumper
is removed.

本文征求全文翻译,请网友支持,来信请寄uc99@163.com,您的译稿将被发表在我的主页。以上英文原文也可以在DM的联机帮助中找到。
程一 http://z80.yeah.net
编发日期:2001.9.8
注:上面征求的全文翻译,已经得到了网友brija的大力支持,以下是他给我的来信及译文全文:

cycyc:
           您好!
    本人刚开始用DM万用版,感觉不错。看到要求对联机帮助进行翻译时,觉得可以试试。由于使用DM时间短,加上水平有限,可能会有一些理解错误,但还是希望能对你有所帮助。译文如下:


  首先用Set Drive Size功能解除一些计算机上BIOS的容量限制。当系统安装有超过特定大小(如33G)的硬盘时,有容量限制的BIOS在开机自检(POST)时将会死机。为了通过开机自检(POST)而不死机,使用这项功能可以使硬盘向系统报告的总扇区数小于BIOS的容量限制。
  其次运行DM来对硬盘分区。DM会认出硬盘的真实容量比报告的更大,并且会装上DDO。DDO可以支持硬盘的真实容量。
  由于装有大硬盘的计算机启动时会死机,这时要使用Set Drive Size功能是不可能的。为了使你的系统能用上这个功能,有以下几种可能的方法:
  最好的方法是临时把这个会导致死机的硬盘装到没有这种容量限制的另一台计算机上,然后运行DM,选择Utility选项,使用DM建议的总扇区设置(Total Sectors Setting)。一旦Set Drive Size功能被成功使用,关闭系统,把该硬盘装回有BIOS容量限制的计算机。启动计算机运行DM进行硬盘分区,这时你将不再需要那另一台计算机。
  另一种方法分四步:
  1、 进入CMOS,硬盘类型设置为none,这样系统可以通过开机自检(POST)而不死机。
  2、 重启运行DM,在CMOS这种设置下DM可能要花一至两分钟初始化(请耐心等待)。然后选择Set Drive Size功能,使用DM建议的设置数值。
  3、 重启进入CMOS,将第1步中的设置由none改为auto。
  4、 重启运行DM对硬盘分区,以后你就不必再重复这些步骤了。
  如果你的CMOS不允许你使用DM建议的设置数值,那么你要么用第一种方法,要么试验用不同的CMOS设置直到你能启动计算机而不死机。
  如果你的计算机在开机自检(POST)时一直会死机,那么你的计算机的BIOS容量限制可能小于33G。最小的BIOS容量限制是2.1G,相当于4128768扇区,你在使用Set Drive Size功能时,可以试试这个值。
  注意:如果你的硬盘有容量限制跳线,使用这种方法时不能使用该跳线,否则当跳线改变时用Set Drive Size进行的硬盘分区将不再起作用。



                    致
礼!

            brija




欢迎光临 硬件收藏论坛 (http://bbs.yjfy.com/) Powered by Discuz! X1