理论上是否有可能将 CPU 模拟内置到引导加载程序或内核中?

理论上是否有可能将 CPU 模拟内置到引导加载程序或内核中?

以某种方式混合 grub 和 qemu 来引导 Linux 内核或 qemu 或内置 cpu 支持的任何 cpu 类型的任何内核,这是一个疯狂的想法吗?

我知道如果引导加载程序模拟 cpu,则可能无法分离引导加载程序,但也许解决方法是将 cpu 模拟内置到 Linux 内核中,以便引导加载程序可以分离。但这种想法是否疯狂、永远行不通,或者工作量太大,任何人都无法承担?

答案1

Qemu 运行在主机操作系统之上。 Grub 等引导加载程序无法为 Qemu 提供足够的服务。 Qemu 作为主机内的普通进程运行,它需要主机内核来执行内存管理、访问文件系统等。

如果您打算运行为不同处理器架构编译的操作系统,那么这是行不通的。虚拟机仍然依赖于主机系统来进行所有硬件访问。虚拟机内部的内核访问Qemu模拟的硬件,而不是真实的硬件。

运行 Qemu 的唯一原因是如果您有针对不同架构编译的程序,这对于在不使用适当的物理设备的情况下测试这些程序非常有用。

相关内容