可以同时启动两个操作系统吗?

可以同时启动两个操作系统吗?

可以同时启动两个操作系统吗?

例如:我目前正在双启动 Ubuntu 11.04 和 Windows 7。Ubuntu 在单个 500GB 硬盘上运行,Windows 7 在 1TB RAID 1 镜像上运行。要在两个操作系统之间切换,需要重新启动。是否可以在不重新启动的情况下在两个操作系统之间切换?

笔记:我完全了解 VirtualBox 和 VMWare Player 的功能 - 我都使用过。请不要回答“使用虚拟化!”

编辑:如果这不可能,你能分享一下为什么不可能吗?对我来说,这似乎并不那么困难。请记住,我的视野不受知识的束缚!

答案1

大多数(如果不是全部)主流操作系统都期望独占访问主机的低级功能(例如:硬件、端口等),并且没有与其他任何东西共享的概念——这根本行不通——因此,尝试在同一系统上同时运行两个操作系统需要某种形式的透明仲裁器来使操作系统彼此屏蔽——换句话说,就是虚拟化应用程序。

答案2

您似乎对 Hyper-V 和 Xen(所谓的“裸机”虚拟机管理程序)不屑一顾,尽管它们似乎最接近您的要求。是的,它是虚拟化,但工作方式与 VirtualBox 不同。

想象一下,像 VirtualBox 这样的东西有自己的操作系统,因此您可以安装一个小型 VirtualBox 操作系统,然后在 VirtualBox 操作系统之上同时运行 Windows 和 Ubuntu 作为虚拟机。好吧,这基本上就是 Hyper-V 或 Xen 所做的。它只是硬件和客户操作系统之间的一个薄虚拟化层,并且它尽可能接近直接与现有硬件和现有操作系统同时运行它们。

需要为其中任何一个配备单独的服务器,您只需安装虚拟机管理程序,就好像它是机器上的第一个操作系统一样,然后在虚拟机管理程序下添加 Windows 和 Ubuntu 作为虚拟机。

Xen 和 Hyper-V 都将运行 Ubuntu 和 Windows 作为客户操作系统,尽管它可能不是受支持的配置。Xen 更像 Linux,而 Hyper-V 是 MS 产品,因此我建议根据您更熟悉的操作系统来选择虚拟机管理程序。

答案3

您能做的最接近的事情是利用休眠。不幸的是,操作系统彼此之间非常陌生,如果不实施虚拟化,两个操作系统就无法同时运行。老实说,虚拟化不再像您想象的那么糟糕了……尤其是当您使用支持“VT”扩展的虚拟化平台时。客户操作系统能够直接与硬件通信,并且具有更好的内存映射等。我实际上已经设置了一个直接安装在 SSD 上的客户操作系统……并且它的运行速度比主机操作系统更快。

答案4

想到的事情有:
- 内存管理(RAM 和缓存)
- 进程管理(进程线程运行)

因此,您可能需要一个中间人来协调两个操作系统之间的内存使用和进程。

那将是另一个操作系统/固件。
因此,如果有人实现了它,操作系统将实现它,你最终可能会同时运行 3 个而不是 2 个操作系统

编辑-
添加 linker3000 写的内容:端口管理

这个“中间人”本质上将成为您的主机操作系统,而其他操作系统将被虚拟化,从而引导您回到您已经知道的解决方案

相关内容