作为模拟或虚拟机方面的完全新手,我面临以下两个需要回答的问题:
- 简要说明软件(此例中为 DOSBox)如何取代某些硬件/CPU 功能。
- 这样做的理由是什么?
当我试图思考可以讨论的这个模拟器的某个方面时,我看到了以下句子:
“由于 DOSBox 可以通过解释来模拟其 CPU,因此它模拟的环境完全独立于主机 CPU。”
但是,我无法找到解释模拟的含义以及环境独立于主机 CPU 的好处是什么。
有人可以帮助我理解它,或者建议我在回答中值得谈论的 DOSBox 的另一部分吗?
提前感谢您的时间和帮助。
答案1
解释模拟是什么意思
这意味着当你在 DOSbox 中运行 DOS 程序时,它不会直接交给 CPU 执行,而是将其指令读取为数据由 DOSbox 本身执行。对于它读取的每条指令,DOSbox 都会在真实的 CPU 上执行执行相同操作的代码。
一个更好的例子是 PDP-11 模拟器或 Atari 模拟器。
环境独立于主机 CPU 有什么好处
这意味着您可以在不支持必要的 16 位模式的 CPU 上运行 16 位 DOS 程序(例如,当主操作系统以 64 位模式运行时),甚至可以在根本不是 x86 架构的 CPU 上运行(例如 ARM 或 RISC-V CPU)。
缺点是速度会比较慢,但对于模拟旧系统来说这是可以接受的,