|
某些“超强适应力”的猫以及“优化”的真相
我们在网上经常看见不少朋友在满心喜悦的说:“我的猫的连接速度常年保持在52XXX以上。”然而同时又有十分困惑的提出,为什么我的以5XXXX连接的猫在下载文件的时候居然比我朋友46666或者45333的猫还要慢。这究竟是为什么,5XXXX或者4XXXX的连接速度是怎样来的呢?
在探讨这个问题之前,我们先看看WINDOWS系统时怎样管理硬件的。
我们知道,WINDOWS9X是通过WINDOWSINF目录下面的INF文件来识别硬件的,也是通过INF文件来向有关的软件提供信息的。其过程是这样的:WINDOWS向相应的即插即用硬件提出询问,硬件即插即用BIOS返回相应的标识;然后WINDOWS系统就在默认或者指定的目录中寻找相应标识的INF文件,然后根据INF文件提供的信息,对即插即用硬件进行管理。也就是说,通过编辑相应的INF文件,就能改变相应即插即用硬件的几乎所有属性,从中断、DMA、IRQ,到生产厂家的信息、硬件版本等等,都能改变。
那么我们的猫又怎样呢?让我们来看看一只即插即用的PCMCIA猫的INF文件。(该文件原文包括很多注释,为了大家阅读方便,有删节) ……
[FMC] %MODEM1% = MODEMC, PCMCIAPCMCIA_CARD_56KFaxModem-FM56C-NF_-BD98 ;V603D28 %MODEM1% = MODEMC, PCMCIAPCMCIA_CARD_MEMBER_56K_FAX_MODEM-FM56C-NF-7E03 ;V5.30 %MODEM1% = MODEMC, PCMCIAPCMCIA_CARD_MEMBER_56K_FAX_MODEM-FM56C-NF_-0FE7 ;V5.30,V5.39,V5.40
上面的这段“%MODEM1% = MODEMC, PCMCIAPCMCIA_CARD_56KFaxModem-FM56C-NF_-BD98”就是一个硬件标识,每一行就定义了这个公司的一种产品。我们可以在“控制面板”-“系统”-“设备管理”里看见。
[All56K] HKR,,FriendlyDriver,,Unimodem.vxd HKR,,DevLoader,,*VCOMM HKR,,ConfigDialog,,modemui.dll HKR,,PortSubClass,1,02 HKR,,EnumPropPages,,"modemui.dll,EnumPropPages" HKR, Init, 1,, "ATZ<cr>" HKR, Init, 2,, "AT &F E0 V1 W &D2 &C1 S0=0 -C1<cr>"
这是定义猫初始化时的AT指令以及有关的驱动程序,如果有兴趣可以参照有关资料,这里不多说了。
下面就是关键了:
HKR, Responses, "CONNECT 57333", 1, 02, 00, F5,DF,00,00, 00,00,00,00 HKR, Responses, "CONNECT 46666", 1, 02, 00, 4A,B6,00,00, 00,00,00,00
上面一行的意思是,当收到回应“1, 02, 00, F5,DF,00,00, 00,00,00,00”的时候,就报告“以57333连接”,而下面的意思就是一46666连接时猫返回的代码。
聪明的读者现在一定明白了。其实猫返回的只是一串16进制的代码,WINDOWS并不能识别这串代码,必须通过INF文件的翻译,才变成我们在任务栏里看见的连接速度。
一旦明白这点,想让你的猫有多快都可以了。只要你把所有的回应都定义成56000,你的猫“看起来”就是在任何时候,任何环境都能以56000连接的超强猫了!
同样的道理,一些厂家为了某些目的,修改了INF文件,让一只其实普通的不得了的猫成为明星,还可以美其名曰“优化驱动”!这就是为什么改一个文本文件(INF),就能让一只慢猫摇身变成快猫的原因了!
所以,我们看到的连接速度只是一个经过加工的数字,甚至只是一个幻影,大家在选猫的时候就千万不要迷信连接速率。利用这只猫连接你ISP的网页,然后下载一些大文件,观察流量,那才是你的猫的真实速度。 |