硬件无关性和软件重复安装的一些处理教程_第1页
硬件无关性和软件重复安装的一些处理教程_第2页
硬件无关性和软件重复安装的一些处理教程_第3页
硬件无关性和软件重复安装的一些处理教程_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、硬件无关性和软件重复安装的一些处理教程驱动程序是沟通操作系统和硬件的重要桥梁,通过驱动程序可以让操作系统识别更多的硬件,并使硬件发挥更好的性能。然而封装系统时我们必须要处理一下源计算机的硬件驱动,毕竟你无法确定目标计算机是怎么样的硬件环境。Windows操作系统是即插即用的,也就是说当出现新硬件时会自动去识别,如果可能则会自动安装该设备的驱动。所以即使我们不处理源计算机操作系统的驱动程序,当系统部署到新计算机时也会自动的识别新硬件,这也可能是为什么微软没有强调封装部署必须处理驱动程序的原因之一。但现实情况事与愿违,某些硬件驱动由于硬件ID的问题本身就存在冲突,某些时候有些驱动程序的残留会造成不

2、良影响等等,这虽然不是Windows的原因而是驱动制作者的问题,但这些情况实实在在的影响了系统封装与部署。我们要讲理论,可也要结合实践,实践才能出真知。所以做好硬件无关性只需要弄明白并处理好下面几个问题即可:A.硬件抽象层(HAL)的处理什么是HAL?硬件抽象层(Hardware Abstraction Layer,简称HAL),位于操作系统内核与硬件电路之间的接口层,其目的在于将硬件抽象化。它隐藏了特定平台的硬件接口细节,为操作系统提供虚拟硬件平台,使其具有硬件无关性,可在多种平台上进行移植。简单说就是将硬件抽象化,以利于各种操作。HAL类型又被很多技术员称为“电源管理模式”或简称“电源”。

3、 Windows XP的HAL有很多种,有“Advanced Configuration and Power Interface (ACPI) PC”、“ACPI Multiprocessor PC”、“ACPI Uniprocessor PC”、“MPS Multiprocessor PC”、“MPS Uniprocessor PC”、“Standard PC”以及等等,种类很多,而且特殊的计算机硬件还会有特殊的HAL。Windows 2000、Windows Server 2003这些与Windows XP同属于Win5.x的操作系统亦是如此,HAL种类繁多。如果算上32位和64位系统的差

4、别,那么HAL的种类至少还要乘2来计算。Windows 7的HAL就简单多了,分为了32位和64位系统两种:“ACPI x86-based PC”和“ACPI x64-based PC”,中文版本可能翻译了其名称,“ACPI基于x86的电脑”和“ACPI基于x64的电脑”。Windows Vista、Windows Server 2008这些与Windows 7同属于Win6.x的操作系统也是一样,HAL简单高效。某些特定机型还有个别专用的HAL,一般用户很少碰到。根据微软文档的要求,封装与部署不可用于不同HAL的计算机。不同的HAL之间是不完全通用的,如果非要把不适合此计算机的HAL用于此计

5、算机,那么很容易出现各种错误。最常见的例子,如部署有Windows XP某计算机在系统部署后无法正常关机和重启。说完了x86与x64的操作系统,我们再来回头看看Win7的HAL。在排除其他因素(如磁盘控制器驱动、兼容性问题等)的影响后:(1)如果我们封装了具有x86 HAL的Win7操作系统,可以部署于所有拥有32位和64位CPU的计算机。但只支持3.25G内存,只支持32位软件。(2)如果我们封装了具有x64 HAL的Win7操作系统,只可以部署于拥有64位CPU的计算机。支持更大的内存,同时支持32位和64位软件。这样看,只要我们避免将拥有x64 HAL的Win7系统映像部署于32位的计算

6、机中就可以了,不用像WinXP时那么麻烦了!B. 硬件驱动程序的处理Windows具备即插即用(PNP)能力,即添加或更改一个硬件后会自动的尽可能的为其安装硬件。所以将系统映像部署到目标计算机,对于Windows来说不过是一次性更换了大量硬件而已。所以一定层面上讲,使卸载驱动成为必须要做的过程的并不是Windows本身,而是硬件厂商开发驱动的能力。各硬件厂商的实力不同,自然对驱动程序的开发能力也不相同,有时某些驱动本身就存在一定的BUG(如早年ATI和VIA的驱动),有时不同厂商之间的配合出现一定问题(如Realtek和ADI曾经存在硬件ID冲突问题),有时在源计算机中正常的驱动到了目标计算机

7、上会因为硬件的不同而造成问题(如Intel PPM驱动,到AMD CPU的机器上会蓝屏),这一系列的问题让我们必须要对驱动程序做做文章了。 一般的驱动卸载方法和注意事项:硬件驱动卸载方法我相信大家都会,打开“设备管理器”,展开所有项目逐一卸载就可以了,但是注意下述项目:(1) 关于“IDE ATA/ATAPI控制器”(2) 曾经盛传需要将“IDE ATA/ATAPI控制器”下凡是“某某控制器”一律改为“标准双通道 PCI IDE 控制器”,据说可以加强兼容性。但经过长时间的观察与实践,结合相关理论后,发现这个说法存在一定的谬误。即使都是“标准双通道 PCI IDE 控制器”,但是此“标准双通道

8、 PCI IDE 控制器”非彼“标准双通道 PCI IDE 控制器”。需要为一个硬件安装什么驱动,是由硬件ID(HWID)来决定的。HWID类似人的身份证一样,理论上是一种硬件的唯一编号,而我们在设备管理器中所看到的硬件设备名,都是通过驱动INF中HWID与其名称对应关系来决定的。就像我们有同名但身份证号不同的人一样,存在着都叫做“标准双通道 PCI IDE 控制器”但HWID不同的硬件,且不在少数。所以即使源计算机中改为“标准双通道 PCI IDE 控制器”,但如果只是和目标计算机中的控制器同名不同HWID,那么就是一种徒劳,且这样会让我们残留“IDE ATA/ATAPI控制器”的驱动,可能

9、会对目标计算机的部署造成影响。那么我们对“IDE ATA/ATAPI控制器”要做的是卸载,而不是修改!对“IDE ATA/ATAPI控制器”执行卸载操作已经经过了实践验证,未发现问题。(3) 关于“计算机”(HAL,或俗称“电源管理”、“电源”)(4) 曾经盛传将HAL改为Standard PC可以提高兼容性,这是仅次于(1)的一个谬误。HAL改为Standard PC倒是还有一点根据,Standard PC是具有最高兼容性的HAL,就像一个人虽然做事做不好,但至少不会出错。使用Standard PC如若出现HAL不匹配问题至多是计算机无法正常关机,计算机电源管理能力下降而已。但是,在上文中我

10、们已经学习了WinXP和Win7的HAL处理方式,现在我想您也可以看出这个说法的谬误。我们又使用了其他方法直接删除了源计算机的HAL,干净利索无残留。所以我们针对WinXP的HAL,至多做个卸载工作。 对于Win7,文中已经详细说明,只要我们搞清楚我们封装的系统是x86还是x64,要部署的计算机的CPU是32位还是64位就可以了,根本无需专门处理HAL。当然,我们也不要卸载Win7的HAL,这是画蛇添足的行为。总结,根据我们对HAL的认识和已有的处理方法,对于WinXP,至多做个卸载工作);对于Win7,无需卸载HAL,不用管它。(3)哪些驱动不需要卸载?有些驱动经过长期实践发现是无需卸载的,

11、如下:WinXP:PS2键盘、PS2鼠标、系统设备;Win7:PS2键盘、PS2鼠标、系统设备、HAL。(严格讲,还应包括“遗留设备(LegacyDriver)”,)(4)还有哪些需要特别注意? 第一,某些驱动的卸载是有顺序的,建议按照设别管理器从下到上的顺序执行卸载,某些驱动的卸载可能触发其他驱动的安装。第二,WindowsInf下的Oem*.inf是已安装驱动的INF文件,建议卸载驱动前删除它们,避免个别驱动在被触发搜寻驱动时使用Oem*.inf中的信息执行自动安装。系统部署安装驱动时会自动再生成,无需担心。第三,WindowsInf下的*.pnf,是驱动INF的预编译文件,建议全部删除,

12、系统部署时会自动再生成,无需担心。第四,注意清理一下HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlNetwork下的4D36E972-E325-11CE-BFC1-08002BE10318和6BDD1FC5-810F-11D0-BEC7-08002BE2092F键,即删除后重建,否则部署后可能出现“本地连接2”。第五,将HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesintelppm键的Start键值改为3,即将此服务改为手动。IntelPPM驱动是用于Intel CPU的,如果使用Intel CPU的计算机作为源计算机,此服务即会启动,而将此系统封装后部署于AMD CPU的计算机就会造成蓝屏宕机问题。而如果使用AMD CPU的计

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论