文档:在 QEMU 中安装 7000 系列 ARMv7 Windows RT 版本
跳转到导航
跳转到搜索
先决条件
下面列出了用于将此版本安装到虚拟机上的以下要求:
- QEMU v6.1.0 Tegra 2 WoA 分支,模拟真实世界的 Nvidia Tegra 250 开发套件,经过修改后可在 ARM 版本上运行早期版本的 Windows
- 截至当前,持续集成(CI,Continuous Integration)目前仅设置为自动生成 Windows 版本。必须使用其他操作系统(如 macOS 或 Linux)从源代码手动编译分支。
- 所需的修补 EFI 固件封装映像(最初来自 Build 7822)将放置在 QEMU 安装目录中名为
fw的新文件夹中 - 两个虚拟硬盘映像(用于存储安装介质和操作系统安装)
注意事项
- 启动系统重启时,模拟器可能会退出。这是 Microsoft 有意实施的设计决策,这是因为 Tegra 250 HAL 将重启视为完全关闭,无法解决。
- 在极少数情况下,安全数字多媒体卡(SDMMC)仿真可能不可靠,并且可能会在映像部署或功能暂存过程中损坏主操作系统磁盘分区。通过以下命令重新尝试以下说明,首先格式化主操作系统分区,然后修改设置 BCD 存储以使用一个 CPU 内核(位于安装介质中的
EFI\Microsoft\Boot\BCD)可能有助于显著提高成功安装的机会,但由于缺少多线程而花费额外的时间:
bcdedit /offline /store M:\EFI\Microsoft\Boot\BCD /set {default} NUMPROC 1
- USB HID 设备仿真不稳定,偶尔会导致设备无法注册任何用户输入。要恢复输入,请切换到 QEMU 兼容显示器(Ctrl+Alt+2)并运行以下命令:
device_del kbd
device_add usb-kbd,id=kbd
- 对于 7957 之前的版本(不包括 Build 7792 和 7822),必须将 Windows 安装程序启动映像替换为原始合作伙伴下发(通常位于
winpe或woape目录中)中的 Windows 预安装环境映像,因为安装程序启动映像不包含所需的硬件抽象层(HAL)扩展,因此将导致操作系统在启动后立即使用代码HAL_INITIALIZATION_FAILED进行错误检查。 - 此指南不适用于 Build 7915,这是因为它被设计为在德州仪器(TI)OMAP4 上运行,且不会在 Tegra 2 QEMU 上运行。需要改用 QEMU-woa。
说明
这些说明基于假定用户打开了提升为管理员权限的命令提示符窗口。
通过运行以下脚本,通过 diskpart 实用程序创建所需的虚拟磁盘映像;它们将在 C: 驱动器中名为 ARM8 的目录下创建。INSTALL、MainOS 和 EFI 系统分区将分别挂载在驱动器号 F 和 P 下。
create vdisk file="C:\ARM8\Setup.vhd" maximum=4096 type=expandable
select vdisk file="C:\ARM8\Setup.vhd"
attach vdisk
convert gpt
create partition primary
format quick fs=fat32 label=INSTALL
assign letter=M
create vdisk file="C:\ARM8\Main.vhd" maximum=65536 type=expandable
select vdisk file="C:\ARM8\Main.vhd"
attach vdisk
convert gpt
create partition efi size=100
format quick fs=fat32 label=EFIESP
create partition primary
format quick fs=ntfs label=MainOS
assign letter=P
exit
根据用户所需的版本分支(free 或 checked),将安装介质的内容复制到 INSTALL 分区。从 Windows PE 或 Windows 安装程序启动映像中提取所需的 EFI 启动管理器(\Windows\Boot\EFI\bootmgfw.efi)以 EFI\Boot\bootarm.efi 形式进行安装。
从计算机中弹出所有当前连接的虚拟磁盘,然后将以下脚本的内容粘贴到 QEMU 安装目录中的批处理文件上并运行,将 FWType 替换为 78xx 变体固件(适用于最高 Build 7898 的早期版本)或 multi 变体(适用于 Build 7898 到 Build 7996):[a]
set BL=".\fw\HARMONY.fd.FWType"
set MAIN="C:\ARM8\Main.vhd"
set SETUP="C:\ARM8\Setup.vhd"
qemu-system-arm ^
-M tegra2-qemu -m 1G -accel tcg,thread=multi ^
-bootloader %BL% ^
-device usb-tablet,id=mouse -device usb-kbd,id=kbd ^
-drive if=sd,index=1,format=vpc,file=%SETUP% ^
-drive if=sd,index=0,file=%MAIN% ^
-serial null -nic none ^
-s ^
开始安装操作系统。必须直接从原始安装媒体调用安装程序,因为操作系统启动映像中的版本不起作用。以下命令可用于启动安装过程:
start D:\sources\setup.exe
完成安装程序的第一阶段后,立即删除安装介质的 SD 插槽,并使用以下批处理脚本配置启动到操作系统:[a]
set BL=".\fw\HARMONY.fd.FWTYPE"
set MAIN="C:\ARM8\Main.vhd"
qemu-system-arm ^
-M tegra2-qemu -m 1G -accel tcg,thread=multi ^
-bootloader %BL% ^
-device usb-tablet,id=mouse -device usb-kbd,id=kbd ^
-drive if=sd,index=0,file=%MAIN% ^
-serial null -nic none ^
-s ^
继续通过正常方式安装操作系统。