UEFI 原理与编程 3 - EDK2 U盘启动盘制作
传统Legacy模式启动盘
编译DuetPkg
build --nt32
build -a X64 -p DuetPkg\DuetPkgX64.dsc
cd DuetPkg
createbookdisk.bat usb E: FAT32 X64
createbookdisk.bat usb E: FAT32 X64 step2
cd ..\Build\DuetPkgX64\DEBUG_VS2015\X64
cp HelloWorld.efi E:\efi\boot\HelloWorld.efi /y
现在, U盘内的结构应如下
Efildr20用于在Legacy模式下引导进入UEFI环境
bootX64.efi是开机后进入的shell, HelloWorld.efi是刚刚复制过去的测试程序.
这里的bootX64.efi实际上来源是 <Workspace>\ShellBinPkg\UefiShell\X64\Shell.efi
, 是edk2预先编译好的shell. 这个可在createbookdisk.bat
中看出:
如果要使用较新的Shell, 可以
build -a X64 -p ShellPkg\ShellPkg.dsc
cp Build\Shell\DEBUG_VS2015\X64\Shell.efi E:\efi\boot\bootX64.efi /y
之后上机测试. 开机按F2进入bios, 再按F8启动设备选择界面 (华硕), 选择U盘. 之后进入Shell