Jvm 是哪一种类的虚拟机呢?是栈式虚拟机吗?

2021-08-09 12:01:21 +08:00
 Richard14

刚开始学习虚拟机的概念,不太清楚。似乎 python 虚拟机是一个栈式虚拟机,因为查看解释出来的机器码很明显是用栈的逻辑实现的。。。jvm 呢?是另一种不同设计的虚拟机?

1142 次点击
所在节点    问与答
4 条回复
xarthur
2021-08-09 12:12:26 +08:00
Sun 在设计抽象意义上 JVM 的是基于栈的。
但是 JVM 也有不同的实现比如 Dalvik 就是基于寄存器的。
但是 Dalvik 真的能算是 JVM 吗?这就是另一个话题了。
Richard14
2021-08-09 12:25:52 +08:00
@xarthur 栈虚拟机我感觉还是挺好理解的,另外一种不是很理解。所以 jvm 本身是栈的话,似乎在不同语言实现一个最基本功能的 jvm 并不复杂?
Jooooooooo
2021-08-09 12:51:19 +08:00
@Richard14 github 上有, 可以搜一下.
icyalala
2021-08-09 13:11:56 +08:00
按照 JVM 最初设计那套指令集来说是基于栈的,
但现在很多实际运行是 JIT 或者 AOT 的,这个概念就没什么意义了。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/794592

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX