我经常使用 Windows 和 Ubuntu,前者用于玩游戏,而后者更多用于编程,但必须重新启动然后选择要启动到哪个驱动器,这有点(尽管很小)麻烦。
我想知道是否没有办法从 Windows 直接从登录 Ubuntu,反之亦然(基本上绕过我必须选择要使用的启动驱动器)?
为了方便,我曾尝试使用虚拟机,只要我将使用限制在终端和浏览器上,它就能正常工作,但只要我打开 IDE,速度就会成为一个大问题。
最后,如果不存在这样的(非 VM)解决方案,是不是因为操作系统与 BIOS 隔离,无法对 BIOS 启动过程进行低级控制?还没有上大学,所以还不太了解操作系统的工作原理,但希望很快能学到更多。谢谢!
答案1
需要理解的根本区别是物理机和虚拟机之间的区别。为了防止物理机发生冲突,多个操作系统不能同时控制同一硬件。
该图显示了物理机中的控制权如何从固件(BIOS 或 UEFI)传递到引导加载程序,再从引导加载程序传递到 Ubuntu 中的操作系统。
有几种方法可以绕过这种控制流,方法是在 Windows 中运行 Ubuntu,而不是旁边窗户(就像在单启动或双启动中一样)。通过所有这些方式,Ubuntu 实例在运行时与 Windows 共享计算机的硬件资源。
在虚拟机应用程序中将 Ubuntu 作为客户操作系统运行。
WSL(Windows Subsystem for Linux)是在 Windows 10(64 位)中引入的。它提供了一个由 Microsoft 编写的 Linux 兼容内核接口,没有 Linux 代码,因此用户模式的 Ubuntu 映像可以在其上本地运行,而不是在容器或虚拟机中运行。这允许在 Windows 操作系统中高效地访问 bash shell 和其他 Ubuntu 程序。
Docker 提供了在松散隔离的环境中打包和运行应用程序的功能,该环境称为容器。隔离和安全性使您可以在给定主机上同时运行多个容器。容器是轻量级的,包含运行应用程序所需的一切,因此您不需要依赖主机上当前安装的内容。来源
答案2
Ubuntu 是一个操作系统,而不是一个应用程序,因此无法在 Windows 内部运行 Ubuntu 作为操作系统。
底线是,如果您不想使用虚拟机,则必须重新启动。
答案3
谷歌搜索“适用于 Linux 的 Windows 系统”。这是微软为 Linux 用户提供的便利。安装后,您可以在 WSL 中安装 Ubuntu。