LLVM和java字节码之间有什么区别? [英] What are the differences between LLVM and java bytecode?

查看:796
本文介绍了LLVM和java字节码之间有什么区别?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我不明白LLVM和java(字节码)之间的区别,它们是什么?

I dont understand the difference between LLVM and the java (bytecode), what are they?

-edit-通过'他们是什么' LLVM和java(字节码)不是LLVM和java。

-edit- by 'what are they' i mean the differences between LLVM and java (bytecode) not what are LLVM and java.

推荐答案

假设你的意思是JVM而不是Java:

Assuming you mean JVM rather than Java:

LLVM是基于寄存器的低级虚拟机。
它设计用于抽象底层硬件,并在编译器后端(机器码生成)和前端(解析等)之间绘制一条干净的线。

The LLVM is a low level register-based virtual machine. It is designed to abstract the underlying hardware and draw a clean line between a compiler back-end (machine code generation) and front-end (parsing, etc.).

JVM是一个高得多的基于堆栈的虚拟机。 JVM提供垃圾收集,具有对象和虚拟方法调用的概念等。因此,JVM为语言互操作性提供了更高级别的基础架构(非常类似于Microsoft的CLR)。

The JVM is a much higher level stack-based virtual machine. The JVM provides garbage collection, has the notion of objects and virtual method calls and more. Thus, the JVM provides much higher level infrastructure for language interoperability (much like Microsoft's CLR).

(可以通过LLVM构建这些抽象,在C之上构建它们。)

(It is possible to build these abstractions over LLVM just as it is possible to build them on top of C.)

这篇关于LLVM和java字节码之间有什么区别?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆