广大消费者,网络运营商,服务/内容提供商以及手机制造商强烈渴望手机的Java性能更强劲,支持更多更复杂的应用,为产业链各方带来更多商机和收入。本文重点关注嵌入式设备Java平台的需求,尤其是Java虚拟机(JVM)。 目前存在若干解决嵌入式设备Java性能问题的方案,文章将分别提到这些不同的方案,然后详细介绍ARM公司的硬件Java加速技术—Jazelle?DBX(Direct Bytecode eXecution)。
应用广泛的移动Java
Java已经在各个领域得到了广泛的应用,尤其是无线移动领域,全球超过100个移动运营商已经推出了Java下载服务。Java也正成为其它嵌入式设备的支持标准,比如机顶盒。Java应用的快速增长源于以下几点:
1 Java的设计初衷“一次编译,到处运行”表明Java具备很好的可移植性。开发和发布Java应用都很便捷,快速上市,节省成本;
2 Java有着广泛的支持网络,众多的第三方在开发各色各样的Java应用;
3 Java平台固有的安全性适合运营商网络下载;
4 Java字节码代码密度较高,程序可以较小以适合内存资源有限的嵌入式设备。可以说,现在Java游戏已经发展成一项产业了,三维图像、多人连线等更的支持也不鲜见。网络运营商和手机制造商希望出现更具可玩性的游戏甚至跳出游戏应用,发展诸如商务,定位,视频等各种各样的增值服务,以带来更多的收入。
嵌入式设备上的Java性能
目前市场上已经有大量宣称支持Java的手机,从技术上来看,许多中低端手机基本上是在30-50MHz ARM-7TDMI处理器上运行一个小型的软件字节码解释器,相对较慢。这对许多的Java小游戏是够用了,因为其性能是由系统的图形处理能力决定的,对Java的要求不是特别高。但是市场发展变化很快,越来越多的Java应用需要更强的图形处理能力,以及一个强大的Java虚拟机。
说到手持设备上的Java性能,我们不得不提一下Java性能评测。理论上,任何Java程序都能在支持Java的设备上运行,Java评测程序当然也不例外。许多网站提供了各种各样的Java评测程序,用户可以很方便的比较各款手机的Java性能。比如的来自www.jbenchmark.com 网站的JBenchmark,此评测指标已经被各杂志媒体广泛引用。手机厂商当然不甘示弱,努力使得自己产品的Java性能指标位于前列。ARM公司也积极地通过EEMBC协会(The Embedded MicroprocessorBenchmark Consortium)定义一项业界Java评测标准。