|
楼主 |
发表于 2015-1-15 11:29:49
|
显示全部楼层
1、“小”与“残缺不全”有着必然的联系
精简的时候,除了版本的取舍,还有就是放弃收录某些小厂家的驱动,靠压缩软件极限压缩甚至压缩前对驱动文件全局扫描,单一实例进行集中预处理,所能减少的体积依然十分有限,所谓用把压缩软件使用好就能做出又小又全的驱动,这个明眼人一看就是经不起推敲。体积的减少必然导致总体hwid数量的减少,一个大的驱动包可能收录了10个厂家的40个版本的驱动,小驱动包就只能收录5个厂商15个版本的驱动,事实就是片面追求体积最小的确会造成很多hwid的缺失,只是对这种差异不同的开发者有不同的看法,有的认为满足90%的需要就行了,而有的希望能达到99%
2、“精简”导致“兼容性差”是不争的事实
因为驱动文件收录数量的减少,导致某些需要特定版本支持的设备在安装另一版本驱动的时候出现工作异常大家都可能遇到过。注意我所谓的精简是指驱动版本和厂家驱动的取舍,不是对驱动附加功能程序的精简,更不是对驱动程序中的文件进行精简。化妆师给演员准备了10套衣服,通常来说是基本够用了,偏偏某天来了个胖子临演所有衣服都穿不下去,但化妆师存衣服的柜子就那么大,无论如何摆放整齐也不能再多放衣服了,解决办法有两种,一种是让临演自己解决服装问题,一种是干脆换个大柜子尽量多装,可惜柜子大了搬运又成问题,不同的化妆师有不同的处理方式,哪种更合理就只有看演员们的态度了。
3、驱动程序和硬件设备有着很强的对应关系,设备匹配ID的精准对系统稳定有巨大影响
这是一个设备的硬件ID和兼容ID列表:
PCI\VEN_8086&DEV_0166&SUBSYS_21FA17AA&REV_09
PCI\VEN_8086&DEV_0166&SUBSYS_21FA17AA
PCI\VEN_8086&DEV_0166&CC_030000
PCI\VEN_8086&DEV_0166&CC_0300
PCI\VEN_8086&DEV_0166&REV_09
PCI\VEN_8086&DEV_0166
PCI\VEN_8086&CC_030000
PCI\VEN_8086&CC_0300
PCI\VEN_8086
PCI\CC_030000
PCI\CC_0300
通常认为驱动安装文件中的ID匹配得越靠上,驱动就和设备兼容性越好,现在驱动A中有PCI\VEN_8086&DEV_0166&SUBSYS_21FA17AA,驱动B中有PCI\VEN_8086&DEV_0166,但是为了缩小体积,最终保留的驱动是PCI\VEN_8086&DEV_0166,那么这个设备就只能工作在PCI\VEN_8086&DEV_0166的模式下,可能设备的一些更个性化的设置项就没有了,而且,这个设备的工作稳定性也可能没有在PCI\VEN_8086&DEV_0166&SUBSYS_21FA17AA下那样好了。驱动程序收录的越多,设备的针对性就越强,理论上这种大驱动包的采用可以提高设备工作的稳定性并尽量发挥其设备能力,当然带来的问题就是体积会急剧膨胀了。
驱动安装过程中发生的很多问题,都是因为设备在驱动包中找不到和它对应的特定版本的驱动文件,在我看来,与其费尽心思筛选取舍最后还是留下遗憾,不如统统都保留,让设备可以找到它最适合的驱动,从而尽量提高驱动安装和设备应用中的稳定性,当然,这个代价就是要面对体积庞大到7、8个G的驱动包。
驱动程序在使用中会发生兼容性问题,驱动收集者就真的鞭长莫及了吗?我不这么认为,我觉得只要尽量多收录适应不同设备的驱动文件,就能解决一部分兼容性问题。
“浪费生命制造缺陷”这个提法没有没有贬低友软的意思,因为按照我们的设计思想,我们也制造了驱动包体积庞大这一缺陷。这个世界本来就没有什么完美的东西,大家思考的角度和希望努力的方向不同,可能就有不同的处理方式,不同的用户会有不同的需要,就让用户去选择他们最喜欢的使用方式吧。。。 |
|