技术解析
与正常系统的启动原理不同,Windows PE的启动本质上属于RAMOS的WimBoot类技术,要想深入了解它就要知道它的启动过程是什么。
Windows PE系统的启动流程(以BIOS启动为例,UEFI大致相同):
bootmgr内置基本ram和wim驱动→加载bcd配置文件读取winpe的启动项→将boot.sdi文件加载到内存→将boot.wim文件加载到内存→bootmgr开始解析boot.sdi文件头数据执行内存盘初始化工作→bootmgr移交控制权给winload.exe→winload.exe内置基本ram和wim驱动直接在内存中加载ntoskrnl.exe等其他系统核心文件......→winload.exe移交内存盘控制权给ramdisk.sys→winload.exe移交文件系统控制权给对应文件系统驱动→wimfsf.sys开始解析boot.sdi镜像里的文件系统并将boot.wim只读挂载到该文件系统中→fbwf.sys将该文件系统可写装载并根据fbwf.cfg设置的值来扩大到指定的卷容量→其他地方大致等同于正常系统→PE系统完成启动阶段......
启动流程解析:
Windows PE与正常系统启动流程的最大区别就是系统文件的加载过程并不依赖磁盘文件系统的支持而是直接在内存中加载到最后再挂载WIM映像到文件系统上,也就是说即使对于ReFS这种目前不可引导的文件系统也依然可以作为WinPE的系统盘使用。