类似于JVM的虚拟机实现

类似于JVM的虚拟机实现

我只是想了解一些有关如何最好地实现虚拟机的信息。我只想知道以下几件事:

  1. VM 更像是虚拟计算机还是虚拟处理器?
  2. 创建虚拟机时有哪些最佳做法?
  3. 您将如何实现诸如寄存器之类的东西?(我显然不期望任何人为我实现虚拟机,但我只想要一个非常简单的例子或解释)
  4. 我应该使用 Python 还是 C 来实现 VM?(对于学习者来说哪个更好?)
  5. 我应该制定很多指令还是我的虚拟机只应该有几个指令?

感谢您的帮助,我意识到看起来好像我没有做过任何研究,但实际上我已经做过了,只是似乎找不到任何好的信息。

提前致谢,弗朗西斯

答案1

我认为您可能混淆了术语。

JVM 不是虚拟计算机或虚拟处理器。

它是一种交互式编译器。它采用通用(非处理器特定)代码(字节码)并即时将其编译为机器码。JVM 执行此操作的方式称为“即时”编译器。

  1. 往上看
  2. 快!编写 JVM 之类的程序需要速度
  3. 现在你已经远远超出了超级用户的范围。你需要在另一个论坛上提问
  4. 都不是。他们的速度根本不够快。
  5. 取决于你想达到什么目的。再说一遍,这里不适合回答这类问题。

相关内容