全手工制作WIN8PE,WIN7PE一条龙教程
背景知识
1什么是WindowsPE
1.1简要介绍
WindowsPreinstallationEnvironment(WindowsPE)是一个为Windows安装而设计的最小操作系统.它可以用于启动无操作系统的计算机、对硬盘驱动器分区和格式化、复制磁盘映像以及从网络共享启动Windows安装程序.
微软原版的PE,只有"命令行"窗口.网上流传的各种版本都是"高手们"修改出来的,甚至有的PE可以作为系统来使用,这都偏离了微软的本意.我不主张"肆意扩展"PE的功能来彰显"技术",但是"可视化操作界面、常用功能的集成"这些都是必要且必须的.
1.2版本编号
下面简要介绍WindowsPE的命名规则[略去WindowsServer2003/2008/2012]:
WindowsPE1.x表示WindowsXP内核.
WindowsPE2.x表示WindowsVista内核.
WindowsPE3.x表示Windows7内核.
WindowsPE4.x表示Windows8内核.
x表示系统版本,例如SP1(带有ServicePack2)
举例:PE1.3表示WindowsXPSP3内核的PE.
2WindowsPE的启动过程
WindowsPE4.x(3.x2.x类似)引导过程[略去1.x]:
2.1详细过程(微软ADK/AIK说明文档):
①WindowsPE在特定媒体上加载启动扇区.系统将控制传递给Bootmgr.Bootmgr从启动配置数据(BCD)中提取
基本启动信息,并将控制传递给包含在Boot.wim文件中的Winload.exe文件.然后Winload.exe将加载相应的硬件抽象层(HAL),接着加载系统注册表配置单元和必要的启动驱动程序.Winload.exe完成加载后,将会准备要执行内核Ntoskrnl.exe的环境.
②该环境将执行Ntoskrnl.exe文件.然后Ntoskrnl.exe完成环境设置.系统将控制传递给会话管理器(SMSS).
③SMSS加载注册表的剩余部分,然后配置运行Win32子系统(Win32k.sys)的环境及其各种进程.SMSS加载用于创建用户会话的Winlogon进程,然后启动服务和剩余的非必要设备驱动程序及安全子系统(LSASS).
④Winlogon.exe根据HKEY_LOCAL_MACHINE\SYSTEM\Setup\CmdLine注册表值来运行设置.Winpeshl.exe将
启动%SYSTEMDRIVE%\sources\setup.exe文件,前提是该文件存在.如果该文件不存在,Winpeshl.exe将确
定%SYSTEMROOT%\system32\winpeshl.ini文件是否指定了某个应用程序.如果该文件未指定应用程序,则
Winpeshl.exe将执行cmd/k%SYSTEMROOT%\system32\startnet.cmd文件.默认情况下,WindowsPE包含启动Wpeinit.exe文件的Startnet.cmd文件.Wpeinit.exe将加载网络资源并协调网络组件(如DHCP).
⑤当Wpeinit.exe结束时,将会出现命令提示符窗口.当命令提示符窗口出现时,WindowsPE的启动进程结束.
2.2简单理解:若为光盘启动,引导文件(例:pe.bif)——bootmgr——BCD——boot.wim——启动PE.
3Windows操作系统的启动过程
除了了解WinPE的启动过程,系统的启动过程也非常重要,可以为将来安装WinPE到本地系统分区做准备,更重要的是加深对系统维护和装机的理解.
/viewthread.phptid=254880&extra=page%3D1
4如何制作Win8PE,Win7PE
①winpe.wim
源自ADK/AIK——被称为"微软官方PE",是最为纯粹的版本,可以进入CMD操作界面
②winre.wim
<系统安装光盘或ISO>\Sources\install.wim\Windows\System32\Recovery\winre.wim——可以进入恢复环境
③boot.wim
<系统安装光盘或ISO>\Sources\boot.wim——定制版的WindowsPE,将启动setup.exe,执行系统的安装
重点:以上三个文件有不同用途.但本质上都是PE,均可为我们所用,深度加工,制作更人性化、更符合要求的WindowsPE.
4.2常见的WindowsPE制作途径分析
可以用来制作ADK/AIK版winpe——安装ADK/AIK时自带winpe.wim,可利用DISM来添加组件,但最终不会有桌面环境,只有CMD操作界面.
可以用来制作Winbuilder版winpe——缺少的文件可以直接从install.wim中拷贝,以获取需要的功能.
重点:
由于WinRE.WIM只比boot.wim分卷2多一个winpeshl.ini文件,故而Winbuilder大多利用boot.wim分卷2;另外,install.wim的几个分卷代表不同的Windows版本,越往后版本越高,故而拷贝文件的时候选择最后一个分卷即可.
boot.wim中的卷#1WindowsPE相当于winpe.wim;卷#2WindowsSetup相当于winre.wim