NoName Team 电脑资讯亚博2018客户端

?找回密码
?我要注册
搜索
查看: 57490|回复: 75
打印 上一主题 下一主题

[推荐新手优先观看] NoName XPE 原理介绍及分析说明

? [复制链接]
跳转到指定楼层
楼主
发表於 2012-3-9 11:55:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
转载来源 : 电脑王46期 玩软体篇 ,PCADV实验室
文:NoName、电脑王编辑部

========================================================================================================
编按:
所 谓WinPE,简单的说是修改过的特制Windows作业系统,可以从光碟开机执行,而WinPE系统又可以粗略分成微软官方提供的阳春版,以及各种网友 自制的特异功能版(以下简称XPE),其中NoName XPE就是正体中文语系下一套少见的强大工具,而软体作者「NoName」也很热心的提供给我们各种制作原理及心得,希望和电脑王读者们分享、推广XPE 系统。为什麽需要WinPE光碟?这是因为硬体的发展日新月异,传统DOS环境下的系统维护软体,已 经跟不上硬体更新的速度了,这让网管们维修系统的时候很不方便。以Ghost备份还原为例,这是目前大家最常用的备份工具,用在Intel 965晶片组的主机板,搭配ICH8R南桥,传统DOS工具片就会出问题了。你会发现光碟机、硬碟都不能用。
这是因为ICH8南桥以後都不再支援传统IDE介面,所以各家主力厂商在主机板上会多加一个硬碟控制器的晶片,例如华硕和技嘉主机板会用JMicron桥 接晶片组扩充出2组SATA以及一组传统IDE,让使用者保留原来的IDE光碟机,因此让DOS原本的IDE光碟驱动程式抓不到硬体,即使开机光碟可以启 动系统,但无法将路径切换至光碟底下。这是由於JMicron桥接晶片对ICH8来说是SATA的晶片,并非IDE介面,所以ICH8会把这些IDE装置 当成SATA装置,才找不到光碟机。虽然也有厂商推出第三方桥接晶片的DOS驱动,但是因为各家的桥接晶片用料不一,也很难做出简化又方便的DOS工具片。

以内建JMicron桥接晶片的例子来说,它的驱动是「gcdrom.sys」,而传统IDE介面的驱动则是「oakcdrom.sys」,这麽一来开机光碟就得设计以下的选单:

1) Boot from Hard Drive........选择要由硬碟开机(预设值)
2) Boot from CD or FDD.........由光碟机或软碟机开机选择2会以DOS开机片接手,再进入第二层选单:
1)IDE CD-ROM .................(传统支援IDE主机板上的IDE光碟机)
2)JMicron SATA CD-ROM........(透过JMicron SATA晶片扩充的IDE光碟机)DOS只支援到USB 1.1

DOS对USB大量储存装置的支援性不佳,而且DOS的USB传输速度只有USB 1.1,虽然有几个DOS版的USB 2.0驱动,但是和主机板的相容性不高,并不是每台电脑都能用。
因为USB是目前最普及又方便的外接储存硬体介面,要是救援系统直接支援USB 2.0的速度,更可以达成快速又方便的维修目的。

USB规格速度列表
USB 1.0/1.1 Low Speed 1.5Mbps 192KBytes/s
USB 1.0/1.1 Full Speed 12Mbps 1.5MBytes/s
USB 2.0 High Speed 480Mbps 60MBytes/s

USB 2.0还原速度的差异

而在WinPE的环境下,可以支援到USB 2.0的速度,笔者将映像档放进外接硬碟,依序测试:
1. 可否正常开机进入系统
2. 可否正常抓到硬碟
3. 执行GHOST32的还原速度
可通过测试的主机板与测得速度如下:


除了965晶片组,南桥晶片为ICH8跟ICH8R的主机板还原速度可达2100-2200 MB/Min外,其余主机板都是在11XX-12XX MB/Min之间。而比照DOS外接硬碟还原到本机硬碟的速度是10MB/Min左右。
当 然WinPE环境执行Ghost不单单只有备份还原速度快这个特色,另外就是不容易发生「GHOSTERR」(因读取错误中断)的情况,用DOS版 Ghost光碟还原系统,读取速度是每分钟300MB左右,而且容易发生GHOSTERR的情况,这是因为光碟容易发生读取不稳定的现象。如果是以 WinPE执行Ghost,除非遇到硬碟有坏轨的情况,不然不会发生GHOSTERR。

什麽是WinPE?
WinPE 其实就是Live CD的一种,而Live CD简单说就是一张可以执行作业系统的光碟。WinPE是「Windows Preinstallation Environment」的缩写,原本是微软提供给OEM厂商进行重灌、救援系统的工作软体。因为WinPE是一张开机光碟,可以拿到任何一部具有基本配 备上的电脑开机。因此,PE系统就像是Windows XP的最小核心版本。我们可以在上面执行应用程式,也能紧急、修复NTFS档案系统、还能读取网路分享内容。

下图为微软官方的Windows PE


BartPE

PE Builder乃是一种用来制作Windows XP Live CD的工具软体。而Bart则是一位荷兰籍程式设计师Bart Lagerweij的名字。下载PE Builder完全免费,制作PE系统的原始档可支援Windows XP与Windows 2003。BartPE就是使用PE Builder制作的WinPE,可以透过外挂功能把一些程式、元件整合到系统,PE Builder无法直接支援正体中文,只能用外挂的方式补足。

XPE
XPE 其实是一套PE Builder的外挂,可以把XP的开始功能表、桌面、档案总管、IE、Windows Media player、DirectX等等都整合到PE系统。使用PE Builder + 繁体中文外挂 + XPE plugin大概有300MB左右,在台湾很少有人自制和讨论,过去最有名的正体中文版本就是2004年香港网友semson所做出来的 「Semson’s WinPE 3.0 繁体中文版」,再来就是「Hiko’s Windows PE」,不过後来这两位作者都没有继续更新,加上硬体的演变,导致支援度也降低,渐渐被遗忘了。

下图为2004年左右网路上所流传的Semson’s WinPE桌面图片



NoName XPE的诞生过程
当 初本人是因为工作的需求,当时工作内容一天平均大概有10台电脑要进行组装,并且安装OEM版本的Windows。而用正常方式安装Windows少说也 要花个30-40分钟,相当费时费力。(客户以DIY组装电脑为主,各式各样的主机板都有,所以不可能也没时间把每一款的电脑都事先做好Ghost备 份。)所以刚开始是在研究万用Ghost XP映像档,以简化缩短工作的上所碰到的难题。
万用Ghost XP就是一个可以Ghost还原到市面的任合一种主机板,然後可以正常运作的映像档,大大缩短安装Windows的时间,不过这边就不再说明万用Ghost XP映像档,因为今天主要是要介绍XPE这个工具。
回到今天的主题,当时虽然说已经成功制作出万用Ghost XP映像档这个工具,但是又遇到一个难题,要如何把这映像档快速,方便的还原到电脑上呢?这就是一开始所说的传统DOS工具片的难题。

PE进化版
当我开始寻找有没有更适合又方便的工具软体。时间在2006年10月左右,无意中在大陆网站上面,找到了一种叫做XPE的工具让我震惊不已,这个XPE跟我之前所碰到的Semson’s WinPE 3.0或是Hiko’s Windows PE 完全不一样。

这类型的PE不仅仅是体积小,开机快速,也支援各类型主机板的SATA RAID晶片组。当然最重要的是,在XPE的环境下,可以让各种外接装置跑USB 2.0的速度,当时想得知更多关於XPE的资讯,尽管我用尽心力翻遍国内各大正体论坛的文章,不过很遗憾的是,我在网路上、各大论坛里,一点都没有关於正 体XPE的相关资讯,因为当时XPE对於从事资讯行业的我,是个相当好的一种 「工具」(至於是哪种工具,那要看你如何去应用他噜。)所以内心充满了无比的冲动和热血,决定自行制作正体中文的版本。历经7个月时间的挑战,在网路上众 多网友的协助和测试下,在2007年5月4号,第一个繁体中文版本的XPE就诞生了,命名为NoName XPE。而目前网路最新稳定版本为08/03/17的版本,这就是繁体中文NoName XPE的由来。

NoName XPE开机演示

NoName XPE从光碟开机後,会把系统核心档案载入RAMDisk内。


系统档案载入RAMDisk後,在这个画面可以选择是否载入额外的第三方驱动。


之後就会出现微软的国旗。


NoName XPE的logo,此阶段会进行系统设定跟解压缩XPE需要的档案。


登入系统进入桌面的画面。


PE光碟的开机奥秘
我想大家一定会对NoName XPE为什麽会比传统的WinPE或是PE Builder做出来的PE体积小,而开机速度又快速的原因有兴趣,我们就来介绍XPE的架构跟开机的原理,并且对照各类PE系统之间的差异。

WinPE的开机流程
2004-2005 年流传在网路上的繁体中文PE,是利用PE Builder + XPE plugin + 正体中文plugin做出来的PE,开机初始化桌面的过程利用XPELOGON.EXE 和 XPEinit.EXE这2个小程式,以便载入EXPLORER.EXE作为Shell。但是也只能依照载入的plugin来定义PE能执行的工作或是软 体,自由度也有一定的限制,再来是修改plugin也有一定难度就是了。如Semson’s WinPE 3.0、Hiko’s Windows PE等等都是这样类型的PE。

关键字:Shell
简单来说,我们可以把shell当做你看的到桌面、工具列、开始功能表、程式集等等的使用介面,底下我们会以「壳层」做为它的中文翻译。

新版XPE的开机流程
NoName XPE也是PE Builder + XPE plugin + 繁体中文plugin,只是它的核心档案有加以精简,只留下开机必备的档案,并做成光碟映像档或是硬碟映像档。NoName XPE启动後会先把你的核心光碟映像档或是硬碟映像档载入记忆体内再启动。开机初始化桌面的过程中是利用PECMD.EXE和PELOGON.EXE这2 个小程式,以达成加载EXPLORER.EXE作为shell。而利用PECMD.EXE和PELOGON.EXE初始化桌面的过程比利用 XPELOGON.EXE和XPEinit.EXE的速度更快。你也可以利用PECMD.EXE的指令,简单又自由的定义出想做的任务。

为什麽会变快?

这 边所谓核心的精简,是说NoName XPE核心档案只包含开机必备的档案,把其他跟开机流程不相关的网路、音效、MMC等组件挪出系统核心,用不到的档案则精简删除,以达到缩小核心体积的目 的。开机进桌面环境後,再看你的需求把其它组件解压回系统内。核心组件经过精简再配合RAMDisk方式启动,就是NoName XPE能达到快速开机的原因。
而传统WinPE或是PE Builder做出来的救援系统,包含接近完整XP的系统档案,而且利用普通启动的模式,速度也受限於光碟的传输速度而显得缓慢,再来是因为进入PE的环境後,只要做任何动作都会读取光碟机,让程式执行速度降低。
由 於光碟的传输速率偏低,因此我们把PE的所有档案制作成一个映像档,然後将映像档直接载入记忆体启动,可想而知它的运行速度会有多快。一般来说是做成 ISO或IMG格式的映像档,最後再执行CAB压缩,映像档的容量就可以控制得很好了。这也是NoName XPE为什麽这麽小的原因之一,因为它经过压缩。但载入记忆体时会自动解压缩,因此这种方式启动对记忆体的容量的要求就会变大,要正常使用NoName XPE建议至少要有256MB的记忆体。

深入传统WinPE开机流程
接下来我们会先介绍NoName XPE开机後直到PECMD接手前的开机流程,再讲解PECMD接手开机工作後直到进入桌面後的过程。首先为了让大家更深入了解PE系统的启动,所以先以微软官方PE跟NoName XPE的启动差异来说明。

微软的Windows PE的开机流程与一般的Windows很接近(摘要自微软网站):
1. 电脑的BIOS载入特定媒体的开机磁区,并将控制权交给Setupldr(一般的 Windows是交给ntldr)。
2. Setupldr载入并执行Ntdetect.com,後者会撷取基本的系统设定资讯,并将这些资讯储存在HKLM\HARDWARE\DESCRIPTION。若以唯读媒体开机,Windows PE 会将登录资料库的hive档存到记忆体,以便应用程式写入。
3. 接着 Setupldr 会以 Winpeoem.sif 载入适当的硬体抽象层(HAL)、系统登录档以及必要的开机驱动程式。载入完成後即准备环境执行核心,也就是 Ntoskrnl.exe。
4. 执行 Ntoskrnl.exe 并完成环境安装之後,再将控制权交给「工作阶段管理员」(Session Manager Subsystem,SMSS)。
5. SMSS 会载入其余的登录资料库,并设定Win32子系统(Win32k.sys)执行环境及其各个处理程序。SMSS再载入Winlogon处理程序以建立使用 者工作阶段,然後启动服务和其他不重要装置的驱动程式及 LSASS(Local Security Authority Subsystem Service)。
6. 接着 Windows PE 会执行 Winpeshl.exe,这个程式会执行「命令提示字元」(Cmd.exe)和 Startnet.cmd(可以当成是Windows PE的Autoexec.bat)。预设会以factory -winpe作为Startnet.cmd的参数,而这会根据以下顺序执行 Winbom.ini里的区段:
[WinPE.Net]
[DiskConfig]
[OEMRunOnce]
[OEMRun]
[WinPE](除了 Restart 之外)
[UpdateSystem]
位於 [WinPE] 的 Restart

7. 执行完 Startnet.cmd 之後,系统会停在命令提示字元,Windows PE的开机程序完成。
Startnet.cmd的预设参数为「factory -winpe」,我们也可以新增其他参数来自订Windows PE开机程序。如果要结束Windows PE,只要在命令提示字元执行 「exit」即可。
微 软官方的Windows PE是以「命令提示字元」(CMD.exe)为使用介面的。而最原始不加上XPE外挂所做出来的BartPE也是以「命令提示字元」(CMD.exe)为 使用介面,要是加上XPE外挂後,在开机流程的第6步骤,就会以XPELOGON.EXE和XPEinit.EXE接手,并用EXPLORER.EXE作 为shell,得到像XP一样的桌面环境,这里就不详细描述BartPE的开机流程了。

========================================================================================================
详解NoName XPE开机流程
看 完传统PE的一些基本概念,在此以烧成光碟为例,详细解说NoName XPE的开机流程,你就会发现跟两者的差异在哪了。当NoName XPE光碟启动时,开机程式会自动寻找光碟底下「\RXPE」资料夹的 「SETUPLDR.BIN」档案,载入并且将控制权转交给它。「SETUPLDR.BIN」则会在根目录底下读取「RXPE.SIF」档的内容,确定是 载入光碟映像档还是硬碟映像档。

NoName XPE的RXPE.SIF档内容
[SetupData]
BootDevice="ramdisk(0)"
BootPath="\RXPE\SYSTEM32\"
OsLoadOptions="/minint /fastdetect /rdpath=RXPE.IM_"


核心映像档的读取解压
RXPE.SIF 的设定值会告诉SETUPLDR.BIN透过RAMDisk的方式加载硬碟映像档,启动後的系统路径为「\RXPE」,对应的SYSTEM32目录为 「\RXPE\SYSTEM32」,也就是相当於平常的「WINDOWS\SYSTEM32」,启动的硬碟映像档在「RXPE.IM_」里面。 「RXPE.IM_」其实是CAB格式的压缩档,里面是RXPE.IMG硬碟映像档,由於SETUPLDR.BIN支援读取CAB格式的档案,所以能够将 找到的映像档从RXPE.IM_中解压出来载入记忆体。

SETUPLDR.BIN的版本限制
这 里的SETUPLDR.BIN必须是Windows Server 2003 SP1中的版本才行,因为从微软Windows PE 2005/1.6(基於Windows Server 2003 SP1)才开始支援RAMDisk及USB随身碟开机。要注意的是,虽然Windows XP Professional SP2和Windows Server 2003 SP1都能制作出Windows PE 1.6,但只有Windows Server 2003 SP1才能做出支援RAMDisk及USB随身碟开机的Windows PE。而且SETUPLDR.BIN有自我校验,还必须经过破解後才能够使用。破解方法很简单,用UltraEdit打开来编辑,找到十六进制地址 2060h的地方,将2060h~2061h 的74 03,修改成EB 1A,再储存就好。

用UltraEdit开启SETUPLDR.BIN的编辑画面,将图中的内容修改成「EB 1A」。

NoName XPE的SETUPLDR.BIN改过很多地方,所以它的资料夹和档名结构,和传统PE不太一样:
传统WinPE NoName XPE
Winnt.sif RXPE.SIF
系统资料夹:i386 系统资料夹:\RXPE
NTDETECT.COM RXPE.COM


交给PECMD接手开机流程
当 系统映像档被解压缩出来,并载入记忆体之後,紧接者会执行「Ntoskrnl.exe」继续完成环境安装,再来是将控制权交给「工作阶段管理 员」(Session Manager Subsystem,SMSS)。SMSS会载入其余的登录资料库,并设定Win32子系统(Win32k.sys)执行环境及其各个程序。SMSS再载 入PECMD.EXE跟 PELOGON.EXE程序以建立使用者工作阶段,然後启动服务和其他装置的驱动程式及LSASS(Local Security Authority Subsystem Service)。
最後启用登录档 「HKEY_LOCAL_MACHINE\SYSTEM\Setup」中的「CmdLine」;在NoName XPE的CmdLine项目是「PELOGON.EXE PECMD.EXE LOAD %SystemRoot%\SYSTEM32\PECMD.INI」,这可以让使用者透过自订的配置(PECMD.INI)来控制整个开机流程。

PECMD
下载位置 :
PECMD 的前身叫XCMD,是由大陆网友Yonsm所撰写的,源码有公开。而PECMD是大陆网友lxl1638以XCMD 2.0原有的17条命令为基础,继续修改完善的程式。XCMD跟PECMD的出现,是因为微软的PE是用Winlogon;而BartPE加XPE外挂的 系统则是以XPELOGON进行登入。

XPELOGON讲求严谨、安全和相容性,可以在登入和关机步骤表现出来,使用者只能按照指定的步骤做、或修改其中很小的部分,也可以说中规中矩。所以BartPE加XPE外挂程式的WinPE系统比较慢,但成功率较大,最多是启动後的使用界面要再调整而已。
而PECMD讲求自由和速度,可以透过自订的配置文件来控制登入过程,并且自由配置系统跟速度。

PECMD接手後的开机流程
执行上一段「CmdLine」登录值之後,PECMD会继续执行PECMD.INI里面的内容,我们会概略说明,执行过程中每一个「_SUB」到「_END」的工作在做什麽。另外底下我们将提到几个指令的用途及内容,由於篇幅的限制,PECMD的详细指令用法请参考其中「 附件三PECMD指令说明.txt (69.28 KB, 下载次数: 350) 」的说明。
对照本文参考资料「 附表一pecmd.ini (6.73 KB, 下载次数: 282) 」的PECMD.INI内容,PECMD会由上往下逐行去找PECMD.INI定义的指令,不过会先跳过含有「_SUB」到「_END」区段的部份。
跳过之後第一个执行的指令就是「CALL Start_Logon」
它在PECMD.EXE里的定义是:

找寻名称为Start_Logon的_SUB段落,然後执行区段里的内容

因此第一个执行的区段内容就是:
_SUB Start_Logon
TEAM LOGO %SystemRoot%\LOGO.JPG|WAIT 500|TEXT 正在设定系统……请稍待…… #0xFF0000,L18,T562,R500,B590
TEAM FILE %SystemRoot%\system32\drivers\*.SY_|%SystemRoot%\system32\NTOSKRNL.EX_|FILE %SystemRoot%\system32\SetupReg.HIV|FILE %SystemRoot%\system32\BOOTVID.DLL|FILE %SystemRoot%\system32\KDCOM.DLL
INIT
_END

而NoName XPE开机流程由PECMD接手後,依序会执行:
CALL Start_Logon ===> LOAD \OUTTOOL\OUTPECMD.INI ===> CALL FixSystem ===>
CALL Created_System_Menu ===>CALL Setting_Run ===>CALL Setting_SHELL


这里我们先挑比较重要的指令解说。在Start_Logon里最重要的就是INIT指令,它的功用是注册Windows壳层,初始化使用者资料夹和环境变量,
并建立以下资料夹:
资料夹名称 对应的目录位置
Desktop(桌面资料夹) X:\RXPE\user\Default\桌面
Favorites(我的最爱资料夹) X:\RXPE\user\Default\我的最爱
Personal(我的文件资料夹) X:\RXPE\user\Default\My Documents
Programs(程式集资料夹) X:\RXPE\user\Default\「开始」功能表\程式集
QuickLaunch(快速启动资料夹) X:\RXPE\user\Default\Application Data\Microsoft\Internet Explorer\Quick Launch
SendTo(发送到资料夹) X:\RXPE\user\Default\SendTo
StartMenu(开始功能表资料夹) X:\RXPE\user\Default\「开始」功能表
Startup(启动选单资料夹) X:\RXPE\user\Default\「开始」功能表\程式集\Startup记住代表每个资料夹的环境变量,
就是在附表当中的资料夹名称前後加上「%」号,例如「%Desktop%」。在INIT指令执行後,我们就可以使用这些环境变量搭配其它PECMD的指令,轻松做到各种功能。

载入外挂程式设定档

在Start_Logon之後,紧接着执行的是「LOAD \OUTTOOL\OUTPECMD.INI」,LAOD指令的用法是:
LOAD <文件路径>
前 面的PECMD.INI也是以LOAD指令载入的设定档。它定义每个指令单独一行,主流程的命令会按照顺序执行。不正确的命令或空行则忽略不计。LOAD 支援ANSI和UNICODE格式的文字设定档,建议使用UNICODE。设定档可加入整行注解或行後的注解,建议用「`」做为注解符号。(键盘左上角 Esc键下面的符号)在设定档中,可以使用环境变量「%CurDrv%」表示目前的磁碟机代号。如果档案路径第1个字元是「\」,就会搜寻所有分割区里指 定目录中的档案。
所以在执行「LOAD \OUTTOOL\OUTPECMD.INI」之後,从某个磁碟机里的OUTTOOL资料夹找到OUTPECMD.INI,该磁碟机代号就可以用环境变量 「%CurDrv%」来代替了。因为每部电脑的磁碟机代号都不同,不管光碟机是叫D还是E,都可以靠这个做法找到。

接下来就是执行OUTPECMD.INI了,档案内容请对照参考资料的「 附表二OUTPECMD.INI (3.41 KB, 下载次数: 274) 」,它执行的流程是:
CALL Setting ===> CALL Setting_Run ===> CALL Created_Tools_Menu ===> CALL Set_HotKey ===>CALL NEW_MOD
用WIM档安装程式
这里特别介绍NoName XPE所使用的一个新技术,就是以微软的WIM映像档格式,再搭配网友们的意见所设计的软体模组化安装方式。这可以让玩家自行修改软体WIM档,自订符合不同需求的维修工具。
在「OUTPECMD.INI」档的「Setting」和「Setting_Run」区段里有以下的指令:

Setting区段的内容
EXEC !=%CURDRV%\OUTTOOL\WIMMOD.CMD
透过PECMD内建的EXEC指令,执行「%CURDRV%\OUTTOOL」目录下的WIMMOD.CMD。

WIMMOD.CMD的内容
FOR /F "delims=" %%i IN ('dir /b/s WIMMOD\*.wim') Do (
MD "%SYSTEMROOT%\WIMMOD\%%~ni"
WimTool /Mount "%%i" "1" "%SYSTEMROOT%\WIMMOD\%%~ni"
)1:判断WIMMOD资料夹内有哪些WIM档案。
2:在X:\RXPE\WIMMOD依照搜寻到的WIM档名来建立对应的资料夹。
3:利用WimTool这个小程式来挂载WIMMOD里的WIM档,到XPE系统目录下的WIMMOD资料夹。

Setting_Run区段的内容
_SUB Setting_run
TEXT 系统设定中……
EXEC !=OUTTOOL.CMD
LOAD %WINDIR%\OUTTOOL.INI
_END

OUTTOOL.CMD指令内容

FOR /F "delims=" %%i IN ('dir /b/s %windir%\WIMMOD\outtool.ini') Do echo LOAD %%i >> %windir%\outtool.ini找出「X:\RXPE\WIMMOD」资料夹内和子资料夹内的所有outtool.ini档案,输出到「X:\RXPE\outtool.ini」。
执行完以上的指令,最後用LOAD指令呼叫设定档:
LOAD %WINDIR%\OUTTOOL.INI就可以做到软体模组化了。有兴趣制作软体WIM档的网友,依照XPE光碟设定的规则制作,可以很轻易的和其它人分享你自制的WIM档。

挂载WIM档好处多

自制WIM档的方法有很多,透过WimTool.EXE是其中一种,这是大陆网友基於WIMGAPI SDK开发的Win32程式,有图形化介面,也支援命令列的参数。WIM映像档除了能把软体包成一个WIM档,还可以启用压缩,大幅缩减映像档的大小。
而 在WIM档的挂载步骤完成後,OUTPECMD.INI会判断你的记忆体够不够,再按照需要设定虚拟分页档。
接下来Setting_Run区段会进行必要 的系统设定、档案解压;再到Created_Tools_Menu建立程式集的捷径;
NEW_MOD区段则会判断是否有模组化的档案……。

OUTPECMD.INI 执行完毕,就返回PECMD.INI的流程,
「CALL FixSystem」会修正一些驱动的路径;
「CALL Created_System_Menu」注册桌面;
「CALL Setting_Run」则是破解PE系统24小时会重开机、和只能开启5个程式的限制;
最後由「CALL Setting_SHELL」载入桌面。

Tips:这里的PECMD.INI跟OUTPECMD.INI的开机、呼叫流程都可以自行制定、增减,未必要照着我们的方法做。

外接装置的开机要领

除 了透过光碟开机,大家应该也会想尝试把PE系统装进随身碟或外接硬碟里。其中USB随身碟的PE系统并没有统一的作法,因为目前市面上的主机板对USB开 机缺乏统一的标准,不同的BIOS使用随身碟开机时,对同一支随身碟的柱面、磁头和扇区数(简称CHS)等容量参数的识别法各不相同,在某个电脑上成功开 机的随身碟,到了另一部机器就有可能开不了。想制作一个万用的紧急开机随身碟,几乎是不可能的。

不过在笔者测试的经验当中,USB外接硬碟在各种BIOS中的CHS倒是一致的,也就是说,制作可开机的外接硬碟,会比较容易成功。
另外随身碟在DOS底下只能跑USB 1.0的速度,某些BIOS可以达到USB 1.1的传输速度,而以USB随身碟安装NoName XPE,从开机到载入RAMDisk映像档前的速度都是以BIOS为准的。
目前已知AMI BIOS(华硕主机板使用)支援到USB 1.1的速度,而Award BIOS(技嘉主机板使用)则是USB 1.0。在某些电脑搭配特定的USB XPE,从开机到进入桌面的时间需要10分钟左右,在不同的环境下,只要花40秒就可以进入桌面了。

因此有了在DOS下先载入USB 2.0驱动,再执行XPE的概念。这种模式可以让某些BIOS只支援USB Low Speed的主机板,能够快速载入RAMDisk进入XPE。不过很可惜目前并没有DOS下的万用USB 2.0驱动,而相容性最高的驱动是Panasonic的「usbaspi.sys」。
我们用一张BIOS只支援USB Low Speed的主机板测试,当usbaspi.sys驱动成功载入时,不到一秒就可以载入RAMDisk映像档(原本需要10分钟)。不过很奇特的 是,BIOS支援Full Speed的主机板,载入usbaspi.sys几乎都会当机失败。在NoName XPE已经做好加挂或不挂USB 2.0驱动的选项,实际上该选哪一个比较好,就得自己开机测试了。

其他关於USB开机说明和USB XPE简易制作方法请参考下面连结文章的教学

沙发
发表於 2012-3-16 10:25:18 | 只看该作者
终於复站了,等了好久丫
板凳
发表於 2012-3-23 14:40:03 | 只看该作者
YA??终於有机会学习了??真的等很久了
地板
发表於 2012-3-23 18:07:48 | 只看该作者
等了好久了,终於有机会再度学习。
5#
发表於 2012-3-23 22:03:53 | 只看该作者
太好ㄌ??有学习的机会ㄌ
6#
发表於 2012-3-24 00:41:02 | 只看该作者
辛苦的过程,我想送花!!
7#
发表於 2012-3-24 01:17:17 | 只看该作者
超精彩的教学过程,值得珍藏,终生受用!
8#
发表於 2012-3-25 01:21:23 | 只看该作者
u32227 发表於 2012-3-24 01:17
超精彩的教学过程,值得珍藏,终生受用!

说得太贴切了,心有戚戚焉!
9#
发表於 2012-3-25 10:11:03 | 只看该作者
看了这篇文章??又增加好多知识
真是太感谢了
10#
发表於 2012-3-25 21:24:29 | 只看该作者
恭喜恭喜
终於复站了
之前在旧站学习到不少新知识
您需要登录後才可以回帖 登录 | 我要注册

本版积分规则

小黑屋|手机版|NoName Team 电脑资讯亚博2018客户端 |网站地图

GMT+8, 2019-8-16 04:26 , Processed in 0.285048 second(s), 24 queries .

Powered by Discuz! X3.4

? 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表