是否可以在不受支持的文件系统上安装 Windows?

是否可以在不受支持的文件系统上安装 Windows?

假设我想为其他文件系统(可能是我自己的?)编写 Windows 驱动程序。是否可以在该文件系统上安装 Windows?最终问题可能来自 Windows 安装程序,或者可能是来自 Windows 本身的更深层次的问题?

答案1

鉴于 ReactOS 支持 ext2,我不明白为什么如果添加了驱动程序,Windows 无法在其他文件系统上运行,但 Windows 确实需要文件系统具有某些功能,因此并非所有文件系统都可以运行。与 Linux 系统不同,Windows 不依赖文件系统的权限,因此它比某些操作系统更有可能在未支持的文件系统上运行。

Windows 上已经有第三方的 ext2 驱动程序,因此您可以尝试一下,而不必编写自己的驱动程序。但是 Windows 安装过程不会识别这些驱动程序,因此它会拒绝允许您安装。

您最好的希望是正常安装 Windows,安装第三方驱动程序(或您自己的驱动程序),然后从 live-cd 创建安装的 .zip 存档,启动 Gparted live-cd,将新文件系统应用于 OS 分区(例如:ext2),然后使用 live-cd 将 .zip 内容恢复到分区。

答案2

是的。试试狡辩

Quibble 是自定义的 Windows 引导加载程序 - 文件 bootmgfw.efi 和 winload.efi 的开源重新实现,能够启动从 XP 到 Windows 10 2009 的每个版本的 Windows。与官方引导加载程序不同,它是可扩展的,允许您从 NTFS 以外的其他文件系统启动。

在转换为其他文件系统之前,您仍然必须先安装到 NTFS,因为只是引导加载程序发生了变化,Windows 安装程序根本没有修改。但是,如果您有其他安装程序,那么您可以直接安装,而根本不需要通过 NTFS

目前这只是一个概念证明 - 请不要将其用于任何严重的事情。

Windows 10 1909 在 Btrfs 上运行的屏幕截图:

Btrfs 上的 Windows 屏幕截图

答案3

前言:很抱歉再次提起这个已过时的问题,但是它恰好是谷歌上前几个搜索结果之一,因此我觉得添加一些有价值的信息会很有益。

答案:从技术上讲,这是完全有可能的,而且不会很难实现,但请记住,它不会像在 Linux 上那样工作。原因是扩展 4 文件系统内置于 Linux 内核中,其中实现了非常特殊的低级功能。这包括性能增强功能,例如预读、Linux 如何处理碎片等。如果我没记错的话,Windows NTFS 文件系统与它自己的驱动程序隔离,这意味着碎片等事情由该驱动程序处理。如果这是真的,那么 Linux 风格的碎片(它实际上不是“Linux 风格”。它是“ext4 风格”,但它是在 Linux 内核本身中实现的)和扩展 4 文件系统可以很容易地在 Windows 中实现。如果您更改了一些基本的系统调用和内核交互逻辑,您甚至可以将 ext-4 的 Linux 驱动程序直接移植到 Windows(虽然 ext-4 驱动程序在内核中实现,但它作为一个单独的模块。如果你不明白的话,可以查阅一下 Linux 内核是如何构建的。

现在某些功能(例如预读)已内置于 Linux 内核中,如果不设法修改 Windows 内核,则几乎不可能在 Windows 中实现。至于在安装 Windows 时加载驱动程序:当您选择要安装的磁盘时,您可以从 USB 闪存驱动器添加其他驱动程序。困难的部分是诱使 Windows不是首先将驱动器格式化为 NTFS。如果做不到这一点,那么制作自定义 Windows 安装程序并不是一个完全不切实际的想法。

相关内容