功率电感生产厂家
联系我们
热门搜索
点击排行
推荐阅读
猜猜你喜欢的
技术知识 您所在的位置: 首页 > 技术知识

MIPS目标平台CLDC的Java虚拟机移植

来源:    作者:    发布时间:2016-06-17 11:29:23    浏览量:

1 Java虚拟机简介
Java ME(Java platform Micro Edition),以前称J2ME,是为机顶盒、移动电话和PDA等嵌入式消费电子设备提供的Java语言平台,它包括虚拟机和一系列标准化的Java API(Application Programming Interface)。Java语言的平台差模电感无关性使其广泛应用于各行各业,而嵌入式领域Java ME技术的发展尤为迅猛。截至2008年底,JavaME技术已应用于全球26亿部移动手机、部署了60亿个Java Cards、4 000万台以上的蓝光设备和TV设备,遍及移动开发的各个领域。
Java虚拟机(JVM,Java Virtual Machine)是实现Java语言平台无关性的关键。Java虚拟机是Java技术的重要组成部分,它是一个抽象的运算机器,有一套自己的指令集,可在运行时操纵内存的各个区域。
嵌入式的Java虚拟机主要有两大类:
(1)CLDC VM
CLDC VM(Connected Limited Device Configuration Virtual Machine)是连接受限的设备配置的虚拟机,以前称为KVM(Kilobyte Virtual Ma共模电感器chine,千字节虚拟机)。CLDC VM一般用于内存很少(如1 MB以内)、CPU处理能力弱(如几MHz)的嵌入式设备。Sun公司于2000年发布CLDC 1.0规范及KVM的参考实现,之后于2006年将KVM参考实现转到开源社区,并重命名为pho一体成型电感器neME Fea-ture。至2009年,phoneME Feature先后经历了MR1、MR2、MR3、MR4版。本文基于phoneME Feature MR4。通常CLDC VM的结构如图1所示。

其中MIDlet是各种Java ME应用程序,运行于CLDC虚拟机之上。
(2)CDC VM
CDC VM(Conntected Device Configuration Virtual Machine)是已连接的设备配置的虚拟机,简称CVM。CVM一般用于智能手机、数字机顶盒、PDA等嵌入式设备。
phoneME Feature MR4软件是一个高性能的虚拟机,它不仅遵循CLDC规范,还实现了高效的资源管理,以及对多任务的支持等。与早期的KVM虚拟机相比,CLDC VM增加了如下特征:
◆支持CLDC 1.0、CLDC 1.1和CLDC 1.1.1;
◆改进Java应用程序的启动时间和执行速度;
◆支持AOT(Ahead-Of-Time,提前)编译技术;
◆支持原地执行(in-place execution)功能;
◆支持多任务功能。


2 CLDC VM移植原理
phoneME Feature软件是一个功能完整的虚拟机,它通过了Sun公司的TCK(Technology Compatibility Kit,技术兼容工具包)兼容测试集。phoneME Feature直接支持两种CPU架构:x86架构和ARM架构。在这两种架构上移植仅需少量修改,而要移植到MIPS架构则需做较多修改。phoneME Feature软件的结构如图2所示。

①JavaCall API移植层:该层提取目电感厂家标平台的需求,实现必须移植的函数集,是基于目标平台的实现。pho-neME Feature的主要移植工作集中于此层。
②MIDP/CLDC层:是嵌入式Java虚拟机的核心部分。其中CLDC为资源受限的设备定义了应用编程接口和虚拟机的基础函数集,MIDP(Mobile Information Device Profile,移动信息设备简表)则提供应用程序环境和应用程序所需的大量服务。
③PCSL(Portable Common Services Library,可移植的通用服务库)层:提供底层服务,供CLDC、MIDP和其他可选包调用。
④抽象层:是一套函数集,所有扩展JSR包通过抽象层接口与MIDP/CLDC层进行交互。
⑤扩展JSR包:为虚拟机提供扩展功能。扩展JSR包种类很多,可根据需要进行扩展。如支持蓝牙和OBEX(对象交换)功能的JSR82扩展包、支持Web服务的JSR172包、支持定位功能的JSR179包、支持在线支付功能的JSR229包等。
Java虚拟机的移植首先要确定两件事:一是目标CPU,二是目标OS(操作系统)。OS移植比较简单,移植工作集中在虚拟机自身和核心CLDC库上;而CPU移植则较为复杂,因为汇编解释器和适配的编译器十分依赖于目标CPU架构。


3 CLDC VM移植过程
phoneME Feature软件结构实现了完全的模块化。它使用一个名为includeDB的配置数据库来管理项目源文件和头文件,可根据目标CPU架构和目标OS需求在配置数据库内添加或修改相应的文件。使用includeDB配置数据库,避免了#ifdef宏散布于整个源码区间,还避免了使用复杂的#ifdef嵌套语句结构。
includeDB配置数据库位于src/vm/includeDB,它是纯文本文件,针对目标CPU架构和目标OS需求进行添加或修改的头文件和函数文件都应在该配置文件中进行注册。

  • 单相正弦波变频稳压电源设计与制作(1)输出电压波形应尽量接近正弦波,用示波器观察无明显失真;(2)输出频率范围为20~100Hz,电压有效值为10~18V的正弦交流电;(3)当输入电压为198~242V,负载电流有效值为0.5~1A

  • 基于DSP的嵌入式温度记录仪的设计1 引言 温度采集与控制技术是测量、控制系统的重要组成部分.传统的模拟传感测量温度系统测量精度低、布线复杂,易受干扰.而新型单片数字式温度传感器测量精度高、抗干扰能力强,应用广泛。这里提出一种基于DS

  • 利用实时Java设计数字音频系统在传统的信息技术领域,Java已成为首选的编程语言,因为它能提高开发者的生产率、软件复用率和可靠性,降低软件维护成本,并提供更灵活、更通用的软件结构。 如今,在低级、硬件、实时软件领域已有各种各样的J

  •