Joa*_*uer 54
他们为什么不为新语言编写新的VM?
那很容易:
b.r*_*oth 26
绩效和图书馆
Syn*_*r0r 19
JVM坚如磐石,可以从最小的Java SmartCard(可以,一个小小的VM)到你能想象到的最大的集群超级计算机.
因为它坚如磐石,所以人们有以下几个国家:
我正在用Java开发商业软件:我们在Windows和OS X上销售,但我们都在Linux上开发.它只是有效.它也适用于Solaris,等等.那是因为我们的目标是JVM:再见可移植性问题.只要平台有VM,软件就可以运行.
然后我无法相信任何人提到它:从安全的角度来看,这是一个非常好的开始.
根据设计,Java VM不受缓冲区溢出/溢出的影响.这是巨大的.这实际上比大多数人意识到的还要大.
唯一的"Java"的缓冲,我记得在Linux上(即促使我升级由于安全问题)溢出实际上是一个缓冲区溢出,导致执行任意代码在...一个C写的LIB(zlib的,如果我没记错的话,早在Linux上的Java仍然是默认的那个lib).
当然,对于webapps缓冲区溢出/溢出导致任意代码执行不再是最重要的攻击向量(现在XSS和SQL注入已经偷走了节目).但在所有其他情况下,缓冲区溢出/溢出是大多数安全问题的根源.
JVM对此免疫.
除此之外,由于它的设计,它很容易插入各种工具,如分析器和调试器.
它是一种非常可靠和安全(正确使用时)的技术.这就是为什么它是如此广泛双方精通技术的使用(Java是巨大的,在谷歌,从Gmail到的Android到GWT等)和技术-不说,精明的公司.
实际上可以说Java的成功来自JVM,而"Java VM"比"Java语言"更重要.
JVM是过去20年来最大的"语言"成功案例.这是应得的.这是留下来:)
因为其他人已经麻烦地确保它在每个主要平台上运行良好.
如果您编写自己的VM,则必须编写一个用于Linux/Unix/BSD,一个用于Mac,一个用于Windows,并且必须在所有这些平台上支持VM以及支持语言编译器和运行时库.如果您使用Java VM,Oracle,IBM和Apple将为您完成第一部分.
是什么让它变得如此强大或受欢迎,以至于为它创造了新的编程语言,它们似乎也越来越受欢迎?
它是自由开放的,成熟的(稳定的,完整的),周围的生态系统是巨大的.
他们为什么不为新语言编写新的VM?
编写与JVM一样好的VM很难.JVM的规范及其实现已经被业内最优秀的人们精心打造了十多年.
因为Java VM有近20年的努力
我的意思是,如果我打算发布一种新语言,为什么我不应该使用JVM?好的,还有其他vms(llvm,parrot),但JVM得到了广泛的支持,已知和测试.
它也很好用!缺乏invokeDynamic将通过Java7的重新解决比这更好解决..
| 归档时间: |
|
| 查看次数: |
3852 次 |
| 最近记录: |