如前所述,我们在嵌入式系统中的应用程序开发中涉及到 Java ME。第 4 部分主要讨论 IS2T 的 Java 产品 MicroEJ®。
*MicroEJ、STM32Java – IS2T*
对于一些嵌入式系统设计人员来说,他们使用的微控制器只有几百 KB 的闪存和 RAM,这种限制使得当前版本的 Oracle Java ME 虚拟机不适合。为了解决这个问题,另一家名为 IS2T 的公司有一个名为 MicroEJ® 的 Java 产品,它使用了一种不同的方法。MicroEJ 也可作为 STMicroelectronics 的 STM32Java SDK 产品的一部分提供。
与将字节码对象直接加载到虚拟机不同,Java 对象首先经过优化和预处理,并在加载到微控制器之前进行板外链接。
这种安排有几个优点:
* 更快的启动时间。例如,在以 120MHz 运行的基于 ARM Cortex®-M3/M4 处理器的微控制器上,启动仅需 2ms。
* 更小的内存需求。MicroJvm® 虚拟机可以装入微控制器,因为最低内存要求是 28KB 闪存和 1KB SRAM(不包括应用程序代码)。即使有一个额外的丰富的 GUI 人机界面 (HMI) 库,它总体上也只需要 90KB 到 140KB 的闪存。
* 更好的优化,因为预处理和链接是在个人电脑上进行的,比微控制器更强大。
潜在的缺点是微控制器无法在运行时动态下载 Java 字节码对象,这对于大多数嵌入式应用程序来说不是问题。
MicroEJ 中的 MicroJvm 虚拟机面对 Java VM 的所有要求(VM 引擎、错误检查、安全性、内存优化器(即垃圾收集))。
对于应用程序开发人员来说,MicroEJ SDK 产品是一种使用功能丰富的 GUI(图形用户界面)开发应用程序的快捷方式。MicroEJ 产品包含 Java 平台 (JPF) 的各种选择。Java Platform (JPF) 包括根组件以及附加包:MicroJvm 虚拟机、标准库,例如 B-ON + CLDC(核心嵌入式 Java API)、MicroUI™(嵌入式用户界面)、MWT(Micro Widget Toolkit,一个嵌入式小部件框架)、NLS(嵌入式国家支持)、运行时 PNG 图像解码器以及用于设计字体、前面板和故事板的图形工具。
作者:Joseph Yiu
编辑:hfy
-
mcu
+关注
关注
146文章
17113浏览量
350903 -
ARM
+关注
关注
134文章
9081浏览量
367303 -
嵌入式系统
+关注
关注
41文章
3586浏览量
129411
发布评论请先 登录
相关推荐
评论