5个月前 (01-25)  技术资料 |   抢沙发  16 
文章评分 0 次,平均分 0.0

教大家安装 Windows 10 on ARM 版本

从苹果的 M1 芯片 MacBook 发布后,打破了人们对 ARM 芯片性能弱鸡,无法运行大型软件的印象。

其实在 2012 年的时候微软就发布过了基于 Tegra 3 ARM 的 Surface 平板电脑,后来又发布了基于骁龙 SQ1/SQ2 ARM 的 Surface Pro X,不过由于性能关心,一直没有获得太大的关注度,加上缺乏原生开发的 ARM 应用。

不过最近 Windows 10 on ARM 似乎又火了!(Adobe 已宣布推出 Windows ARM 版的 PhotoShop,目前还是 Beta 阶段。)

近期 macOS 著名的虚拟机软件 Parallel Desktop 新版本支持 M1 Mac,可运行Windows 10 on ARM 系统,所以买了 M1 Mac 的小伙伴,将得到一台能运行macOS,iOS,Windows 程序的笔记本。

今天就分享如何在 X86 的电脑上模拟运行 Windows 10 on ARM 系统:

准备工具

1.Windows 10 on ARM 镜像
2.QEMU 虚拟机软件
3.QEMU EFI 文件
4.USB Mass Storage DXE 驱动

安装方法

创建两个 VHD,一个 UEFI 能访问的 VHD,存放 USB Mass Storage DXE 驱动模块大小 16MB 足矣,下文称为 hdd.vhd(如果能够把驱动模块集成到 UEFI 里面,这个 VHD 可以省略)。

以及一个实际安装系统的 VHD,下文称为 usb.vhd大小 32-64GB 足够了,毕竟这也只能作为实验。

接着挂载 hdd.vhd 文件,然后创建分区并格式化为 FAT32 格式,放入 USBMassStorageDxe_arm64.efi 模块文件,然后卸载 VHD。

挂载 usb.vhd,使用 GPT 分区表,创建 ESP 和安装系统的分区 ESP 使用 FAT32 格式,大小 100MB,安装系统的分区使用 NTFS,占剩下的空间给这两个分区分配盘符,下文假设 ESP 为 S:,系统安装分区为 W:

然后使用 dism 将系统 ISO 的 install.wim 恢复到 W: 假设 ISO 挂载到 G:,恢复的映像 ID 为 4(一般 4 是 Pro,具体的 ID 请使用 dism /get-wiminfo 查看)

<code>C:\&gt; dism /apply-image /imagefile:G:\sources\install.wim /index:4 /applydir:W:\</code>

然后使用 bcdboot 在 ESP 分区上建立引导

<code>C:\&gt; bcdboot W:\Windows /s S: /f UEFI</code>

然后卸载 VHD,这里建议备份一下 usb.vhd 再继续。

QEMU配置启动

将 Linaro UEFI 的 QEMU_EFI.fd 复制到一个方便的位置

下面假设为以下路径

<code>EFI D:\QEMU_EFI.fd
hdd.vhd D:\hdd.vhd
usb.vhd D:\usb.vhd
</code>

然后用以下命令启动 QEMU ARM64 模拟器

<code>qemu-system-aarch64 -M virt -m 2048 -cpu cortex-a53 -smp 2 -bios D:\QEMU_EFI.fd -device VGA -device nec-usb-xhci -device usb-kbd -device usb-tablet -drive file=D:\usb.vhd,id=usbstick,if=none -device usb-storage,drive=usbstick -hda D:\hdd.vhd
</code>

其中

<code>-m 2048 为内存大小,单位为 MB
-cpu cortex-a53 为模拟的 CPU 内核,可选 cortex-a57 和 cortex-a53
-smp 2 为模拟的 CPU 核心数
</code>

以上可以按实际情况调整

模拟器启动之后,按 ESC 进入 UEFI 的设置菜单,选择 Boot Manager,选择最下面的 EFI Internal Shell,进入 EFI Shell

然后应该可以看到 hdd.vhd 的分区 FS0,键入以下命令加载 USB Mass Storage 驱动

<code>load fs0:\USBMassStorageDxe_arm64.efi</code>

然后键入以下命令,刷新设备列表

<code>map -r</code>

这时应该能看到一个 FS0: 和一个 FS1:,一般 usb.vhd 的 ESP 会分配到 FS0:,所以我们键入

<code>fs0:\efi\boot\bootaa64.efi</code>

启动系统,如无意外的话,系统就会启动了。

 

除特别注明外,本站所有文章均为安装打印机网原创,转载请注明出处来自https://www.azdyj.com/15891.html

发表评论

暂无评论

登录

忘记密码 ?

切换登录

注册