dedecms织梦内容管理系统  
 
首页 | 方舟产品 | 系统优化 | 硬件系统 | 软件系统 | 网络系统 | 无盘网络 | 软件下载 | 杀毒防黑 | 专题 | 会员中心 | 方舟论坛
  当前位置:方舟系统站>系统优化>系统克隆>文章内容
Windows系统ghost克隆基础知识
来源: 作者: 发布时间:2008-01-14  


Windows系统ghost克隆基础知识

这里的Windows是指微软的Windows 2000/XP/2003(后文中未经说明的,凡是Windows均指这三种系统);所谓的通用克隆,俗名万能克隆,又名封装系统,就是在一台机器上装好Windows系统,然后经过一系列的技术处理,然后将它使用克隆软件克隆出来,使得这个克隆系统能够在任意的目标PC上恢复。事实上,到目前为止,我还没有遇到过真正的万能克隆,做得再好的通用克隆系统也会遇到失败的情况,而从理论上来说,要实现真正的万能克隆也是不太可能的,在后面的叙述中我们会详细讲一下原因。

最近在很多论坛(龙帝国、无忧启动、sysoft时空、DOS联盟)均看到有人关注有关Windows通用克隆方面的基础知识问题,而很多人对于Windows的通用克隆,只知道S&R&S软件和死性不改,至于S&R&S表示什么意思,死性不改对通用克隆的发展到底作了哪些贡献,均不甚了了。更多的人不了解通用克隆的制做需要解决哪几方面的问题,甚至还有很多人连一些基础概念都不清楚。这种对通用克隆缺乏了解的情况是很普遍的,导致通用克隆这个并不复杂的技术被很多人神秘化,甚至走上了神坛,让广大用户都觉得它是可望而不可及的。实际上,就本人的了解和理解,通用克隆的制做原理并不复杂,但如果抛开S&R&S这一类的制做软件而完全自己手工实现,则在细节上就要麻烦很多,所以,本文只讲原理,不深究技术细节,有兴趣的人可以在本文的基础上进一步穷其本源,而事实上,也只有靠自己的努力探索才能获得其精髓。

1.通用克隆需要解决的技术问题

很多人都知道,一个不经处理的Windows系统直接恢复到另一台机器上,最有可能出现的情况就是蓝屏,或者反复重新启动。那么,造成蓝屏、重启等的原因是什么呢?事实上,这就是通用克隆系统所要解决的最基本的技术问题。

1.1 Windows的硬件抽象层(HAL)问题

我们知道,NT是基于内核的分层设计的操作系统(实际上是类UNIX操作系统),最早的NT系统是支持包括I386(Intel及AMD平台)、Alpha、Sparc等不同硬件平台的操作系统,共实现原理就是将操作系统分层设计,其中最底层的硬件抽象层(即Hardware Abstract Layer,也就是HAL)直接与硬件相关,高层只与其下一层打交道,不再直接接触硬件(这也是Windows NT下不允许软件直接访问硬件的主要原因)。那么,这里的HAL层就相当于现在的JAVA虚拟机、也相当于ISO组织定义的开放互连网络中的OSI七层参考模型中的物理层的作用。就算是在I386平台下,很显然,一台P3的机器跟P4的机器所用的硬件差别也是很大的,也即,它们对于Windows来说要使用不同的内核,也就是不同的HAL。

有了上面这些基础的概念,我们就可以开始介绍通用克隆制做中所谓的电源模式问题了,实际上,电源模式问题就是HAL的问题,又叫计算机类型问题(因为它直接对应设备管理器中的计算机类型项)。在我们日常接触的PC中,最经常用到的计算机类型有这么几项:
Standard PC
Advanced Configuration and Power Interface (ACPI) PC(简称ACPI)
ACPI Uniprocessor PC
ACPI Multiprocessor PC

关于如何理解这些计算机类型之间的区别,请参考龙帝国论坛木鸟朋友的这篇文章:http://nufans.net/dvbbs/dispbbs.asp?boardID=1&ID=823&page=1。另外,也可以参考我曾经写的这篇文章《Windows 2000/XP/2003操作系统所支持的计算机类型(HAL)及相关内核文件的对应关系》来进一步了解不同计算机类型之间的区别及更换计算机类型的原理与方法。

基本上,上面所列出的四种HAL类型,后三种都与Standard PC(标准计算机)兼容,而如果使用了错误的HAL类型启动目标计算机,系统也有可能正常启动,但可能会丢失某些功能,例如一台支持ACPI的计算机如果以Standard PC模式启动,那么就会导致关机时不能自动关闭电源。所以,如何正确的选择目标计算机的HAL类型成为通用克隆系统制做发展历史上的一个重要课题,在前面所提到的木鸟的文章中也有这个历史发展过程的简要介绍(事实上,hyne、chenall、死性不改最早都是从无忧论坛开始讨论这个问题的)。那么解决HAL问题的历史中经过了这么几个阶段:

1) 以Standard PC方式安装系统,然后手工修改计算机类型。

这种方式是在制做克隆系统前将计算机类型手工修改为Standard PC以求得克隆系统的最好兼容性(同时还会修改IDE控制器为标准双通道,后面详述),然后恢复到目标计算机,但会导致设备管理器的计算机类型中出现两个Standard PC,然后手工将其中一个修改为适合于目标计算机的类型(这要靠人工判断),这种方式的缺点是修改完重新启动后还要再搜索一遍硬件驱动,导致系统中出现大量幽灵硬件。

2) 人工判断,手工选择。

这一阶段以hyne、chenall、死性不改(我所接触到的)为代表,通过使用批处理或者VB程序的方式,在克隆系统启动时出现一个选择菜单让用户选择适合自己计算机的HAL类型,至于如何判断自己计算机所使用的HAL类型,基本上是靠安装人的经验。这种方法避免了二次搜索硬件的过程,至于更多的优点,我已经记不太清楚了。

3) 使用TA.EXE自动判断,手工确认,BOOT菜单二次修改。

这种方法主要来源于死性不改的创举,他发明了使用XP Embeded制做工具中的目标计算机分析程序ta.exe再加上使用CPUZ的结果来判断CPU数量,从而综合判断目标计算机可能的HAL类型。当然,这种判断方式是不完全准确的,有可能会发生错误,所以才会出现手工确认以及BOOT菜单控制法等补充手段,这一阶段的最完美产品我觉得是S&R&S 5.5 Build 1030。

4) 使用WinPE来判断计算机类型。

这种方式在木鸟的文章中有提及,我不甚了了,所以也无法过多介绍。但可以肯定的是,这种方法根本没有流行起来。

5) 使用Longhorn的ntldr自动判断并选择计算机类型。

这种方法我看到的是由网友“微软破解中心”在无忧启动论坛发表的一篇文章中所介绍的,现在这篇文章在网上流传的很广,文章写得也很浅显易懂,我就不详细介绍了,有兴趣的去搜索一下来看看。总之,就是发现longhorn的ntldr有一个新参数,即/detecthal(在boot.ini的启动项中设置),通过这个参数,可以实现自动判断并选择计算机类型,而且这种技术由于源出于微软,所以其结果是百分百准确的。基本上,使用Longhorn技术来判断正确的hal就是目前最完美的解决办法。死改不改的S&R&S 9.x版本基本上都使用这种方式。

共4页: 上一页 1 [2] [3] [4] 下一页
 
[收藏] [推荐] [评论(0条)] [返回顶部] [打印本页] [关闭窗口]  
用户名: 新注册) 密码: 匿名评论
评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
 §最新评论:
  热点文章
·网络克隆详解
·GHOST参数大全
·xp克隆版的安全问题
·Windows通用克隆系统入门基础知
·Ghost命令参数详解
·网络克隆(网克或网络Ghost)
·网管常用工具GHOST图解说明| 方
·用ghost备份linux系统
·Sysprep制作快速安装系统映像包
·pxe网络克隆教程
·网络克隆操作实例
·网克前的准备工作-将pxe启动代码
  相关文章
·Windows 2000/XP/2003操作系统所
·Sysprep制作快速安装系统映像包
·xp克隆版的安全问题
·Windows通用克隆系统入门基础知
·不加载驱动的情况下在SATA硬盘上
·HAL类型分析
·网管常用工具GHOST图解说明| 方
·还原精灵使用注意几个问题!| 方
·自己动手制作系统恢复盘| 方舟系
·pxe网络克隆教程
·网络克隆操作实例
·网络克隆(网克或网络Ghost)
  主题推广
方舟网络 版权所有|关于本站|隐私保护|