如果列出已经将java语言移植进去的所有硬件和操作系统的话,这张列表将会长得令人惊叹不已,因而不要再诧异于快速涌现出的那么多开始趋向支持java模型的手持设备。将java移植到小型设备上恰好提出了一种挑战,它已经使java的足迹开始进入到一个全新的境界,任何将java 2标准版(j2se)或者java 2企业版(j2ee)应用到小型设备上的想法都已经完全不成问题了。
那么,应该怎么将java移植到小型设备上呢?你的第一种想法可能是,缩减所有对小型设备来说并不急切需要的功能。但是这样一来会显著地降低java的功能覆盖,而且未必有助于问题的解决。解决创建这样一个java的更小版本的问题实质上就是――创建一个java的更小版本。与其想通过限制已有平台的类型来解决该问题,不如借用j2se中合适的东西脚踏实地从基础做起,正是这种努力导致了称为java 2缩微版也称j2me(java 2 micro edition)的java 2的新版本的出现。
现在,在你急切地想去寻找j2me软件以使你能下载它之前,你首先应该知道j2me并不是一种产品,而是一种技术,j2me包括两种类型的组件,即配置(configuration)和描述(profile)。
配置(configuration)是一系列低层次的api(应用编程接口)和一种为该族设备优化的虚拟机。今天在用的一般配置有两种,连接的设备配置(cdc)和限制连接的设备配置(cldc)。
cdc提供了一种虚拟机,以及支持像灵敏发报机、寻呼机、个人数字助理(pda)和电视机顶盒这样的设备上的java应用的基类库。这些设备的典型特征是具有一个32位的处理器和用来支持虚拟机和类库的超过2mb存储容量。cvm虚拟机正好满足了它们对于java 2虚拟机特征集的功能需求。这是在小型平台上全特征的虚拟机。
cldc提供一个适合于小型的、资源受限的、连接的设备上使用的标准java平台。这些设备的典型特征是具有一个16位或者32位的处理器和用来支持虚拟机和类库的160kb到512kb的总内存,它们通常以电池作为电源,并联入某类网络中,联网一般使用带宽时常小于9600bps的无线的、断断续续的连接方式。cldc的核心是k虚拟机(kvm)。“k”标记反映了它们的大小是以kilobytes(千字节)衡量的这一事实。cldc的特征也是包含一系列类库。
描述(profile)是一种说明,它详细描述了架构在配置之上并使用配置的一系列api。描述的一个例子是创建在cdc之上的基础描述(foundation profile),它为以像住宅网关、灵敏电话和双向寻呼机这样的设备为目标的应用提供完整的j2me运行时环境。另一种描述是移动信息设备描述(midp),它构建在cldc之上,为那些运行在像移动电话和登录级pda这样的设备上的应用提供完整的j2me运行时环境。midp致力于解决像用户界面、持久存储、联网和应用程序生命周期这样的问题。
闽公网安备 35060202000074号