关于作者

用户名:xhni
笔名:xhni
地区: 广东-深圳
行业:其他

日历  

快速登录

+ 用户名:
+ 密 码:

快速通道

在线留言



最新评论

友情链接

友情博客

访问统计:
文章个数:11
评论个数:0
留言条数:1




Powered by BlogDriver 2.1

Mobile Java

 

xhni is a software engineer for Aspire Tech, you can reach him at xhni@zuaa.zju.edu.cn

文章

移动软件应用猜想

http://www.monternet.com/moneditor/cs/subject/zwtx/jsxf/3466/5305.html

摘要:本文从移动终端软件的角度探讨未来移动通信网络上可能的软件应用平台和基于软件的业务。
  关键词:移动软件应用平台 JSR 232

  移动软件的需求

  相对于2G、2.5G移动通信,3G移动通信的标志是宽带数据通讯,将宽带网络引入智能终端,同时3G手机是永远在线的,为数据业务提供了更大更广阔的舞台。随着3G时代的到来和终端软件技术的发展,一方面,无线数据业务将更加多样化、复杂化,高级终端应用如即时通讯、流媒体业务、网络游戏甚至企业应用等软件应用将逐步繁荣,应用不再局限于一两个依赖于硬件的“杀手级应用”;另一方面,市场的压力对业务的快速推出也提出了更高的要求。这些变化将使终端应用越来越复杂,越来越软件化。将复杂的计算放到用户终端上去,这与网格计算、即时通信等应用的思路非常一致,也符合终端计算能力越来越强、带宽越来越大的技术发展趋势。其带来的好处是,移动运营商只需要控制通信资源而不必投入大量新的计算设备就可以开展非常丰富的业务。将不用为每一个业务提供一个独立的应用平台,从而为运营商节省大量的投入。

  手机可能是人们将来最随身携带,最私人化的东西之一,用户使用移动通信增值服务的时候将有如下几个特点:

  1. 用户群非常广泛。手机的使用者涵盖各个用户群,任何人都有从手机上获取服务的需求,这就要求手机上的应用更加简单易用,具备傻瓜化的特性,相比之下,现在的PC和手机上的网络应用和设置对于大多数人来说还是太复杂了。

  2. 需求多变。将来一个人出门可能除了带手机和钥匙之外,其他都不用带了,用户在不同的环境下都需要随时随地用手机来方便地获取各种不同的服务。这样用户对于手机应用的动态性的需求将远高于PC。

  3. 安全性和可靠性。正是因为手机的功能越来越强大和它的私人化,对安全的要求也越来越高,直接为用户提供服务的将是运营商或可靠的SP,而服务的后台和细节将对用户隐去,以手机为核心的产业链将成封闭化趋势。这也使得手机上的增值业务具备了可收费性。没有可信赖的计算和应用的支持,在上面就很难搭出符合现代版权保护要求的商务模型。

  传统的浏览器和下载这样的简单方式增加了用户寻找和使用网络上的服务的难度,在与需求无关的环节上花费了精力,影响了用户体验的舒适度。正如世界上的IT大公司近来提倡的“软件作为服务”那样,在下一代软件应用里面,服务是最重要的概念。手机本身不可能提供功能齐全的软件应用和服务,大多数情况下用户通过手机来获取服务,用户关心的只是可供使用的服务,而不关心这个服务是谁提供的,如何实现的等需求无关的细节。比如用户在手机上写完一份邮件,需要做拼写检查,则相应的语言拼写检查服务被自动激活,如果本地终端没有该服务,一个类似“浏览器”的软件运行平台会自动搜索网络并获取所需的拼写检查服务。手机的容量是有限的,上面只能保存少量的软件,如果这个服务过一段时间不使用,那么就会被自动删除。软件作为服务是指在网络环境下计算机软件之间协同工作的一种新的运算模式。服务与传统软件的区别是:虽然“拼写检查软件”还存在,但一切都自动查找和启动,不需用户自己“寻找”、“下载”和“安装”,大大提高了用户体验的舒适度。

  服务的提出使得网络和应用细节变得“透明”了,不再是业务去适应计算机的运算模式,而使计算机软件来适应业务和人的思维,终端强大的计算能力为在下一代移动通信网络上创建更高级的服务和内容“通道”创造了可能。同时需要运营商主导的高级网络平台来整合整个移动软件产业(注,后面的讨论仅限于软件和基于软件的业务,同理可能沿用计算机这个称谓),为终端用户和网络上的软件服务提供商等资源搭建起一座可靠高效的桥梁,通道应用和业务将与运营商的网络更加紧密地结合起来,而计算主要放在用户终端上,运营商的原有网络可以平滑过渡过去。各类SP也可以利用该服务通道提供独具特色的增值应用。掌握着用户资源的运营商也可以适当介入业务,构建完善开放的价值链,挖掘3G软件增值应用业务,为软件业务应用提供指导和支持,使得业务开发者可以专心于开发自己的业务应用,而用户也可以获得一致的满意的体验。一切以用户为导向,这样才能更好地繁荣3G的内容和服务产业,实现整个产业的成功!

  当然基于软件的增值业务不可能替代所有的传统业务,也不可能涵盖所有的增值业务,就像现在的网络不能完全替代传统的报纸和电视一样,原因有很多,不在本文讨论范围内,但是,这些应用技术将对传统的业务做很好的补充,同时开拓新业务和更广阔的市场。

  现在的通讯带宽越来越宽,终端计算能力越来越强,电池使用时间越来越长,这些都是触手可及的,但是对于网络上的服务资源的有效整合和业务运营模式却缺乏探索,根据木桶理论,制约移动网络业务能力的永远是那根短板。未来运营商的运营计算将是移动软件应用中不可缺少的一个环节。

  移动软件应用平台

  对于3G上内容丰富的应用来说,仅仅像B/S架构那样传输普通意义上的“数据”是无法满足前面这些需求的。良好地表示、访问和使用大量的增值服务和资源是成功的3G软件计算的基础,包括本地的计算资源和网络上的服务计算资源。应用平台要给用户提供交互性更强和更智能化的服务,而且要不影响现有网络的发展模式,类似于RichClient网络应用技术,通过渐进的方式引入新的技术和业务。

  对于这样的复杂应用,一开始就是以网络业务为出发点,软件应用和业务的基础是终端软件平台,同时应该和网络平台紧密结合。在这样的模型中很可能用可传输的构件来体现服务的概念,每个构件都用自描述的信息(元数据)将本身所提供的服务和依赖关系等描述清楚,用户终端通过获取这些构件来获取并和网络后面的服务(任何服务,包括WebService)交互,而构件如何实现这些服务,包括调用其他后台的系统对外都是不可见的。这样移动网络的软件应用计算就分成了两部分:构件在终端平台上的运行(终端计算)和关于服务构件的元数据的计算(运营计算)。移动终端和运营商平台联系更加紧密、更多地参与计算,这也是移动软件应用的一个显著特点。通过元数据这一层计算,服务的使用者和提供者就不再直接接触。用户需要的服务的元数据提交给运营端的数据业务管理网元之后,数据业务管理网元将进行元数据计算,找到可用的服务之后,直接或者间接地交给或推送给用户终端平台进行服务程序的计算,这样就可以为用户提供透明的服务。数据业务管理网元结合其他网元可以实现对网络服务的元数据的控制,从而实现对用户的服务元数据级别的访问控制和计费,此处不作具体讨论。数据业务管理网元的元数据计算还可以实现服务的动态组装,可以实现多SP联合提供服务,甚至运营商可以组装出全新的业务!

  通过良好的元数据计算还可以提高计算的效率,甚至在对性能要求较高的计算上也有好处。运营商的运营计算不仅仅包括用户所需要的服务(构件)的查找匹配,还包括不同服务间的适配、代理、优化、组合和提高服务质量等;为了给用户提供傻瓜化的服务,运营商平台还必须能够配置用户终端。将来的移动网络平台的功能之一将是实现服务元数据的管理,实现新的服务资源的注册和发布,支持资源相关性的发布,可以注册和已注册实体间的相互约束和相互联系信息等等。通过数据业务管理网元的良好运营,不仅仅开放了整个产业链,而且从整体上提高了整个网络的业务能力。

  这种移动软件应用模型,对运营管理也提出了需求。在将来,除了SP、CP提供丰富的服务和内容以外,能否让用户放心地使用服务,也是影响到3G是否能否获得成功地重要因素。运营管理必须和网络以及终端底层的软件平台相结合,这样才能保证端到端服务的质量和安全(QoS),提供电信级的业务。包括数字版权和用户的身份验证等计算将作为服务由终端配合完成,运营商还将提供终端(计算环境)的远程配置管理等服务,结合这些服务,可以给用户提供可靠的商业应用,同时给SP提供一个方便的服务生成环境,SP可以非常方便地实现自己的业务逻辑。通过对这些环节的规范化,可以缩小移动软件业务的开发和运营之间的距离,使得移动运营商在产业中占据更加重要的地位。这也就必然要求运营商参与到手机终端的应用平台标准的制定中去。

  未来的移动软件应用架构下面无论是软件业务计算还是管理计算都将贯穿于整个网络,包括SP、运营商的服务器和用户终端,运营商提供的网络不再仅仅是数据传输的工具,而且是业务计算和管理的组成部分,是一个应用平台。用户手机是永远在线的,对于用户来说,网络将被虚化掉,本地硬盘和本地程序也将被虚化掉,用户只需要和终端应用平台可获取的服务打交道,本地硬盘和网络都成了内存的延伸,不用区分这个服务是本地程序还是SP提供的网络服务,用户需要的只是像浏览器那样的“点击运行”。

  要更好地为用户服务,不仅仅是运营商和终端之间要有良好的应用架构,还要将各种网络和业务能力开放给Internet上的服务提供商,让服务提供商更好地开发相关网络增值业务,一个设想的大致架构如下图:

 
  图 1

  终端软件平台

  如果把移动网络软件业务比作大厦的话,需要有扎实的“地基”和“砖瓦”、“钢筋”、“水泥”等条件作基础。电信网络等基础设施是地基,而作为软件业务主要承载,目前的移动终端软件平台技术只能算是一些不规则的“砂子”,在砂子的概念之上是不可抽象出高楼大厦的,只有有了合适的“砖瓦”等概念以后才能搭建起移动软件业务大厦,带来整个产业的繁荣。终端的支持是网络应用的关键。

  与桌面领域统一操作系统的情况不同,手机操作系统很难真正统一,因为首先追求个性化的手机在界面、键盘方面就不可能采用统一的尺寸,明智的方法是统一应用软件层的API接口,以保证不同业务在不同终端的互通。弱化OS的概念,在一个统一的平台上通过组件化形式嵌入各种应,使得应用可靠,减少开发者的工作量,避免重复发明轮子。只有在设备生产厂商,服务提供商、软件开发商以及运营商之间制定了开放的标准, 才能推动整个产业的发展。

  在市场的驱动下,包括移动通信运营商在内的各个大厂商会联合起来制定针对于各种业务的规范和技术平台标准,就移动终端上的Java技术来说,JCP(Java Community Process)主导的Java规范(Java Specification Request, JSR)是最有可能的结果。JCP可以让所有对Java感兴趣的软硬件厂商、个人和组织都能参与到技术规范的制定和发展过程中。Java技术问世之初就是一个针对于嵌入式平台的网络技术,这么多年来Java已经获得了长足的发展,有着广泛的支持者和JCP的成熟运作,Java是未来终端软件平台规范最有力的竞争者。

  未来的手机将不再局限于CLDC,目前在JCP里有超过70个J2ME相关的JSR,有些已经成功定义和实现了,有些还在制定过程当中,而有些已经被拒绝了。这些JSR都重要,但是以下四个制定中的J2ME 规范将极大地影响未来移动终端上的Java平台:

  1. JSR 232 Mobile Operational Management
  2. JSR 248 Mobile Service Architecture for CLDC
  3. JSR 249 Mobile Service Architecture for CDC
  4. JSR 271 Mobile Information Device Profile 3

 
  图 2  J2ME规范

  JSR 232 移动业务管理规范(Mobile Operational Management),领导者是Motorola和Nokia,其他专家组成员还包括IBM、SUN等IT巨头和NTT DoCoMo、Vodafone等运营商,目标是为移动设备创建一个安装、执行、描述、升级和删除Java及其相关代码的构件的可控环境,目标针对于计算能力较强的CDC配置,为更新手机组件提供了一个高度一致的架构,并且允许移动运营商远程配置管理终端和发送软件。Nokia认为,JSR 232将使客户端像Java服务器一样容易配置。这个规范其实是将原有OSGi服务平台的一组管理移动终端平台和应用程序的基本服务规范(API)包含了进来,其中还包括了对OMA设备管理(JSR- 246)的引用。它的意图是在JSR框架里面做需求,然后在OSGi的移动专家集团里内部做设计与实现。在2005年6月26日-6月30日一年一度的 JavaOne 大会上,Nokia和IBM隆重向开发者介绍了这个新的J2ME规范。作为世界上最大的手机生成商,Nokia承诺将于近期在Nokia论坛网站上发布实现JSR 232的相关工具和软件开发工具包(SDK),并希望开发者面向手机开发更多的企业应用和服务,而不仅仅是游戏。这个规范也引起了SAP的兴趣,其原因之一是想将其ERP软件拓展到手机设备上。JSR 232规范解决了终端平台和应用程序的配置管理和安全等问题,提供一个用于移动领域Java平台的基于标准、面向服务的安全计算环境,从软件应用和软件业务的角度来看,JSR 232规范更像一个中间件规范。

  JSR 248/249 移动服务架构规范(Mobile Service Architecture for CLDC/CDC), 这个规范还在定义的初始阶段。领导者:Vodafone和Nokia。这个JSR提出了移动手机上的服务架构和手持终端上平台定义,有望定义一个统一的包含所有需要的API和硬件特性的手持设备平台,这样可以使开发者创建个人和娱乐的(端对端)的应用和服务等高级业务,这个规范将考虑到各种重要的API如JAX-RPC等。同时定义CLDC到CDC的移植方案。可以作为正确地使用各种各样的Java 技术的指南。

  JSR 271定义了针对于移动手机的MIDP 3.0(一组与设备和业务相关的API),扩展了各个领域内的功能和增强了不同设备之间的交互能力。领导者:Motorola。 JSR 271和JSR 232/OSGi的目标有着一定的重合,值得注意的是Motorola也是JSR 232的领导者。 MIDP3.0有意为JSR 232/OSGi已经提供的一些库和功能提供支持。

  值得一提的是还有JSR 277 Java Module System,这是2005年6月份刚刚提出的J2SE规范提案,虽然它是一个Java语言规范,但是它试图解决的问题很大程度上和JSR 232是重复的。领导者:SUN。 这个规范定义了一个新的Java程序发布格式和Java代码和其他相关资源的容器。还定义了运行时程序的发现、加载和集成机制,同时这个规范还规定发布模块中将包含描述该模块信息的元数据,例如版本信息、模块中包含的资源、与其他模块的依赖关系等。更好的模块化就使得程序可以更好地在网络上被传输和组装,这可能是Java技术在支持应用程序计算的网络化方面的又一大改进,将是J2SE 7.0里面最重要的一个规范。


 
  图 3  支持JSR232的CDC手机

  如果稳定的CDC Java VM可以在移动终端上被广泛应用的话,JSR 232将极有可能成为这些移动终端上的Java 软件应用平台的核心,就目前的产业情况来说,很多手机终端厂商,移动运营商和软件开发商等都已经参与进来,预计在2005年底规范会面世。Nokia作为标准的领导者,估计在2006年最早推出支持此平台的手机,他们对高级终端市场有着清晰的目标。另外OSGi/JSR232技术在纯软件领域已经取得了令人瞩目的应用,拥有了一定数量的开发商和技术咨询商。JSR 232手机将通过满足一些独特的业务需求和得到运营商的大力支持而发展壮大。

  这些终端规范将为移动软件应用大厦准备好了合适的“砖瓦”,JSR 232/249更是将远程管理配置和服务组件的完整生命周期管理等应用到了手机上,大大提高了在手机终端上开展软件服务的能力,也较好地符合了前面的移动软件应用的设想,可以作为网络平台的客户端API。这是整个产业的大势所趋,移动通信运营商因为自身特殊的地位,可以在上面更有效地开展更强大的业务。

  移动软件增值业务

  和浏览器以及其他二进制代码动态下载如BREW和简单KJava等数据网络化的应用相比,移动软件应用平台处于网络业务中间件的位置,抽象程度更高,它提供了一个API标准,下层是通讯协议,上层是应用,为网络业务开发商提供了更多支持又不失通用性,为用户提供了更统一、智能操作方式,如果得到运营网络平台支持的话,理想情况下将是一个可以媲美浏览器和短信的应用,但是和浏览器以及短信相比它跟用户的互操作性更强也更智能化,它将像过去的浏览器那样改变人们使用终端和网络的方式。用泥土只能堆成土丘,而把泥土烧成砖瓦以后就能构建大厦。

  现在的增值业务还停留在主要提供娱乐的阶段。下一个应用将是那些以用户为中心并且方便了人们交流和获取服务的应用。如搜索,在Google那么简单的一个界面里面就可以低成本地获得几乎任何你想要的信息;如JSR232,在得到网络支持的情况下,只要一个JSR232终端就可以用一种统一的方式轻松完成几乎任何你想要的功能(可以参考Eclipse平台,也是基于OSGi/JSR232技术),用一种统一、简单的方式来包含(描述)所有复杂的问题一直以来都是人们的梦想。这也和“普适计算”的思想是一致的。

  以手机游戏为例(可能上面只有服务的概念而没有游戏),用户在玩游戏的时候将再也不用关心各种不同游戏客户端的下载,不用关心这是在线游戏还是离线游戏,不用再关心还有多少存储空间,用户要做的只是玩游戏或者是别的,而服务组件可以随时随地主动或者被动地透明地发送到手机上去。通过一个统一的简洁的界面来给用户提供最丰富最准确的服务,大大提高了用户体验的舒适度。游戏开发商也可以获得该平台上的其他服务和标准的支持,不用再从头做起,可以更快地把创意转化成游戏,甚至可以获得指导。如何在此应用平台上开发更多的业务还有待于广大开发者去挖掘, 除了娱乐以外,移动软件增值服务将和人们社会生活的各个方面更加紧密得结合起来。

  在前面移动软件应用架构的基础上可以为移动终端用户开展各种随时随地的透明的基于软件的增值应用。对于运营商来说,要关注的两点,一个是推进终端软件平台的标准化,控制将服务的概念定义成粒度大小合适的兼容组件,有了合适粒度的概念,才能搭建起应用的大厦,从SP的角度、从软件理论研究者的角度和从运营商的角度,看到的粒度是不一样的,这也是该应用虽然类似但是不同于Jini和网格计算等技术的地方。第二个是从整个网络的角度建立业务的运营计算模型,这个计算模型中的所有元数据构成元数据目录,它采用统一的结构来描述元数据,无论使用何种结构,元数据目录应当满足两点:其一,它应该是一种层次的目录结构系统,如LDAP;其二,它应当不破坏现有系统的元数据描述方法,并能与它们很好地交互、融合。

  和目前的增值业务发展过程类似,单纯的手机软件应用不是问题,如何在网络上形成通用规范和业务才更有意义,也还有很多路要走,产业的成功相当大的程度上取决于开发商的支持程度,运营商要尽快找到自己的位置,起到催化剂和黏合剂的作用,让产业各方意识到这一模式带来的好处,寻找业务,培育市场,用更好的产品和服务吸引用户,实现产业的共赢!

  总结:从终端软件角度提出了一个抽象度更高的服务通道,并大致设想了通道的实现,结合将来可能的终端技术分析了该网络应用平台上面独具特色的以用户为中心的增值业务。JSR232和OSGi一脉相承,但目前在它公布之前尚不知道它的细节和对元数据的支持如何,未来的互联网将更加多元化,一切皆有可能,本文很多地方过于理想化,仅作抛砖引玉。

- 作者: xhni 2005年12月6日, 星期二 11:31  回复(0) |  引用(0) 加入博采

Class ClassLoader

From JDK 1.4.2 API

一个 class loader(以下称类加载器) 是一个对象,它负责加载类。ClassLoader类是一个Abstract 类。
   如果给了一个类的名字,那么类加载器将会去加载和生成有关构成这个类的定义的数据。典型的策略是将这个类名转换成一个文件名,然后从文件系统中读取这个类文件名。
   每个类对象都有一个对其自身类进行定义的类加载器的引用(reference)
   多个数组类的类对象不能由类加载器创建,但它们可以根据需要,由java 运行时(runtime)自动创建。针对一个数组类通过Class.getClassLoader()来返回它的类加载器,这个过程和与返回数组里面的元素的类加载器的过程是一样的。但是,如果数组的元素是基本类型(primitive type)的,那么这个数组就没有类加载器。
   应用程序为了能具有扩展(extend)JVM动态加载类的能力,它需要实现(implement)类加载器的子类。
   类加载器的典型使用是由安全管理者来指定安全域。
   一个ClassLoader 类,使用委托(delegation model)模型来查找类和资源。每个ClassLoader 类的实例都有一个向上一级的(父亲)类加载器)的联接。当需要查找类或资源的时候,一个ClassLoader 实例在亲自查找这些资源之前,先将查找任务委托给它的父加载器。在类加载器内部构建虚拟机的类加载器,称为“bootstrap 类加载器”,它本身没有父加载器,但它却可以充当一个ClassLoader 实例的父亲。
   通常由JVM从一个由(操作系统)平台支撑的本地文件系统中加载类对象。例如:在 Unix 系统中,文件的路径由CLASSPATH 环境变量定义,JVM 加载类就是从这个路径中提取。
   然而,有些类并不存在于一个本地文件,他们可能来自其它的来源,如它们可能来源于网络,也可能由一个应用程序(动态)创建。defineClass()方法 将一个字节数组转换为一个Class类的实例,这个实例可以由Class.newInstance()创建。
   由类加载器创建的对象的方法和构造器(constructor)可以引用其它的类。为了确定要引用的类,JVM触发类加载器的loadClass()方法。
   例如:一个应用程序可以创建一个网络类加载器,使其能够从服务器端虾子类文件。代码可以如下所示:
  ClassLoader loader = new NetworkClassLoader(host, port);
  Object main = loader.loadClass("Main", true).newInstance();
   . . .
  这个网络类加载器子类从网络上加载类,必须定义findClass()方法和loadClassData()方法。一旦它下载了足够的字节,能够组成这个被加载的类,它就会使用defineClass()方法来创建这个类的实例。类加载器实现样例如下:
       class NetworkClassLoader extends ClassLoader {
        String host;
        int port;

        public Class findClass(String name) {
            byte[] b = loadClassData(name);
            return defineClass(name, b, 0, b.length);
        }

        private byte[] loadClassData(String name) {
            // load the class data from the connection
             . . .
        }
    }

- 作者: xhni 2005年09月21日, 星期三 14:55  回复(0) |  引用(0) 加入博采

2005 Java中国开发者大会
摘要:JavaChina 查看全文

- 作者: xhni 2005年09月18日, 星期日 21:58  回复(0) |  引用(0) 加入博采

几个对将来移动终端上Java平台影响最大的JSR

未来的手机将不再局限于CLDC,目前在JCP里有超过70个J2ME相关的JSR,有些已经成功定义和实现了,有些还在制定过程当中,而有些已经被拒绝了。这些JSR都重要,但是以下四个制定中的J2ME JSR将极大地影响未来移动终端上的Java平台:

1.         JSR 232 Mobile Operational Management

2.         JSR 248 Mobile Service Architecture for CLDC

3.         JSR 249 Mobile Service Architecture for CDC

4.         JSR 271 Mobile Information Device Profile 3


 


JSR 232 Mobile Operational Management,领导者是Motorola和Nokia,其他专家组成员还包括IBM、SUN等IT巨头和NTT DoCoMo、Vodafone等运营商,目标是为移动设备创建一个安装、执行、描述、升级和删除Java及其相关代码的构件的可控环境,目标针对于计算能力较强的CDC配置,为更新手机组件提供了一个高度一致的架构。诺基亚认为,JSR 232将使客户端像Java服务器一样容易配置。这个规范其实是将OSGi服务平台的一组管理移动终端平台和应用程序的基本服务规范包含了进来,其中还包括了对OMA设备管理(JSR- 246)的引用。它的意图是在JSR框架里面做需求,然后在OSGi的移动专家集团里内部做设计与实现。在2005年6月26日-6月30日一年一度的 JavaOne 大会上,诺基亚和IBM隆重向开发者介绍了这个新的J2ME规范。作为世界上最大的手机生成商,诺基亚承诺将于近期在诺基亚论坛网站上发布实现JSR 232的相关工具和软件开发工具包(SDK),并希望开发者面向手机开发更多的企业应用和服务,而不仅仅是游戏。这个规范也引起了SAP的兴趣,其原因之一是想将其ERP软件拓展到手机设备上。JSR 232规范解决了终端平台和应用程序的配置管理和安全等问题,提供一个用于移动领域Java平台的基于标准、面向服务的安全计算环境,从软件应用和软件业务的角度来看,JSR 232规范更像一个中间件规范。


JSR 248/249 Mobile Service Architecture for CLDC/CDC, 这个规范还在定义的初始阶段。领导者:Vodafone和Nokia。这个JSR提出了移动手机上的服务架构和手持终端上平台定义,有望定义一个统一的包含所有需要的API和硬件特性的手持设备平台,这样可以使开发者创建个人和娱乐的(端对端)的应用和服务等高级业务,这个规范将考虑到各种重要的API如JAX-RPC等。同时定义CLDC到CDC的移植方案。可以作为正确地使用各种各样的Java 技术的指南。


JSR 271定义了针对于移动手机的MIDP 3.0(一组与设备和业务相关的API),扩展了各个领域内的功能和增强了不同设备之间的交互能力。领导者:Motorola。 JSR 271和JSR 232/OSGi的目标有着一定的重合,值得注意的时候Motorola也是JSR 232的领导者。 MIDP3.0有意为JSR 232/OSGi已经提供的一些库和功能提供支持。

值得一提的是还有

JSR 277 Java Module System.,这是20056月份刚刚提出的J2SE规范提案,虽然它是一个Java语言规范,但是它试图解决的问题很大程度上和JSR 232是重复的。领导者:SUN. 这个规范定义了一个新的Java程序发布格式和Java代码和其他相关资源的容器。还定义了运行时程序的发现、加载和集成机制,同时这个规范还规定发布模块中将包含描述该模块信息的元数据,例如版本信息、模块中包含的资源、与其他模块的依赖关系等。更好的模块化就使得程序可以更好地在网络上被传输和组装,这可能是Java技术在支持应用程序计算的网络化方面的又一大改进,将是J2SE 7.0里面最重要的一个规范。

- 作者: xhni 2005年08月19日, 星期五 14:03  回复(0) |  引用(0) 加入博采

Manage Mobile Clients with OSGi

2005年6月26日-6月30日,SUN 举办了一年一度的 JavaOne 大会。

Nokia和IBM 在本次大会上的基调是展示他们在移动通信方面的整体战略,

http://wcdata.sun.com/webcast/archives/VIP-1981/#day3

诺基亚首席技术官彼得·科赫恩希望能在本周的旧金山JavaOne大会上展示JSR 232,并宣布有关开发工具包的细节。新规范本身是一本上百页的文档,指导制造商利用新技术。它将成为J2ME(Java 2 Micro Edition)规范的一部分。JSR 232的最终版本预计将于年底完成,再经过6到9个月有望推出成品。

JSR 232其实就是以Nokia和IBM为首的OSGi Mobile Expert Group 闭关制定的OSGi R4,看样子OSGi Release 4的发布日期也不远了

其实用OSGi来作为终端软件平台已经不是什么新鲜事了,在《Enterprise J2ME》一书中就有《Managed mobile clients with OSGi: Managed smart clients》这一节内容

转载一些对JSR232的报道:

新闻1:

Java新规范浮出水面 移动用户将有更好体验

2005-06-28 08:15 作者: 方恺   来源:eNet硅谷动力 
 
 
  【eNet硅谷动力消息】 现在产业界正在制定一个全新的Java技术规范,它将使开发手机应用包括娱乐内容变得更加容易。这一移动运作管理规范称为JSR 232,目前诺基亚和摩托罗拉公司在这一规范的制定和开发过程中处于领先地位。它还得得到了其它手机制造商、运营商和软件开发商包括沃达丰、NTT DoCoMo、IBM和SAP公司的支持。

  来自诺基亚负责Java技术的主管Jon Bostrom表示,这一全新Java规范中的管理能力允许手机运营商自动向手机用户发送更新升级的软件,它还能监控硬件资源,甚至远程检修问题。该技术主管是全新Java规范的领先开发者之一。

  如果用户想要下载一个新游戏但是缺乏正确的编解码器,这一全新Java技术可以解决这一难题,它可以允许开发商将编解码器和游戏封装在一起,同时发送给用户,甚至可以在手机还在使用的过程中安装这些软件。

  这一规范包括了runtime技术,使得开发商可以很轻易地编写需要与服务器或者其它手机交谈的应用程序。这样今后游戏中就可以包含即时消息功能,商业应用程序可以轻易地从后端系统中获取用户信息。由于规范中提供了许多runtime服务如安全、消息队列以及连接性,为此这些应用程序的编写变得愈发简单,否则开发者将不得不自己去编写这些代码。这使得开发者可以专注于用户界面和商业逻辑,而无需担心这些应用下层的基础设施或者中间件和组件。

  Bostrom表示,这一规范所做的是将成功应用于服务器领域的中间件环境带入到手机领域。

  SAP公司之所以对这一规范感兴趣是因为它想将其ERP软件拓展到手机设备上。手机运营商和运营商以更好的产品和服务吸引用户。

  这一规范是一份长达数百页的文档,它告诉手机厂商和开发商如何实现这些技术。JSR 232将成为手机和其它嵌入设备规范J2ME的一部分。

  诺基亚的首席技术官Pertti Korhonen预计JSR 232将在下个星期于旧金山举行的JavaOne展会上露面。届时他将宣布全套的开发工具以及演示如何使用这些开发工具。

  该规范的草稿将在一个月内完成,规范终稿预计在年底之前完工。在这一规范以最终产品问世之前,需要6到9个月的时间。并不是每件事情的进展都很顺利。按照预定计划,JSR 232规范已经滞后一年了,主要是将时间花费在如何让业内的厂商意识到这一规范所带来的实惠。Bostrom表示,业内的厂商习惯于规范技术成熟并获得了应用后,才会考虑采纳,为此我们花费了大量的时间来培育它们。与此同时,这一规范还得和标准组织Open Systems Gateway Initiative(OSGi)进行协调。

  业内分析家表示,JSR 232将使运营商和企业获益匪浅,但是这一规范的成功部分取决于开发商的支持程度。这一规范至今还处于起步阶段,何时能够起飞还尚不明朗。

  有些用户期望这一规范能够获得成功。咨询机构Gartner 的首席分析家Daren Sidall日前尝试了一个来自Hellomagazine.com的业务,该业务使用Java程序将名人的新闻和图片发送到手机上。在 预定这一业务的第一天,情况看起来很正常,然而此后该分析家发现他不能够下载更新的内容了,最终他发现是其手机中的GRPS设置需要改变,为此他询问了运营商,但是一头雾水的运营商无能为力,Sidall最后取消了这一业务。然而诸如这类问题在JSR 232规范中就可以得到还好的解决。
 

 


新闻2:

IBM诺基亚联合呼吁Java开发者转向手机平台

--------------------------------------------------------------------------------
 
http://www.sina.com.cn 2005年07月04日 11:38 新浪科技


北京时间7月4日消息,诺基亚和IBM近日呼吁Java开发者认真对待程序开发,并号召开发者面向手机开发更多的企业应用和服务,而不仅仅是游戏。诺基亚和IBM都参加了在美国旧金山举行的2005年JavaOne大会,两家公司在会上宣布,不久前刚刚开发完成的Java应用程序接口(API)可以为移动客户端设备加入强大的服务器功能,从而开发者可以更快更轻松地为手机升级新服务。  

  IBM软件开发部门副总裁克莱格-海曼(Craig Hayman)表示,当前的移动应用开发周期需要进一步缩短,在6到9个月的时间内移动应用就应当部署在移动设备上投入使用。目前,诺基亚和IBM都致力于Java规范要求(JSR)232的开发,而这一规范的开发主要由诺基亚和摩托罗拉通过Java标准化组织JCP(Java Community Process)领导。诺基亚和IBM宣称,JSR 232为移动设备带来了功能强大的面向服务架构(SOA)。

  JSR 232为一系列用于远程更新J2ME设备的组件定义了一个框架,这一框架覆盖了应用程序的安装、初始化、停止、更新以及删除的整个过程,为更新手机提供了一个高度一致的架构。诺基亚认为,JSR 232将让客户端像Java服务器一样容易配置。

  诺基亚首席技术长佩尔蒂-科霍宁(Pertti Korhonen)表示,JSR 232将成为客户端发展历史上的一个重要里程碑。他说:“我们希望在用户的移动设备中加入强大的服务器功能,这意味着用户可以在设备出厂之后通过特定的应用程序接口和中间件服务定制设备。”作为世界上最大的手机厂商,诺基亚承诺将于近期在诺基亚论坛网站上发布应用JSR 232的相关工具和软件开发工具包(SDK)。

  为了帮助开发者开发Java应用,诺基亚一直在增强诺基亚论坛网站,特别是为企业应用开发者提供更多资源。诺基亚论坛Pro专区专门为独立软件开发商和开发者提供了营销和商业资源,帮助它们围绕诺基亚的Series 60和Series 80手机开发应用。

  Sun公司公布的数据显示,目前全球共拥有7.08亿部支持Java的手机,而个人计算机数量为6.5亿台。这一数字表明支持Java的手机在数量上已经超过个人计算机,因此科霍宁呼吁Java开发者将开发Java应用的对象由个人计算机转向手机。他说:“开发者应当意识到手机平台有着广阔的发展前景,Java技术在手机上可以得到更广泛的应用。在不久的将来,开发者可以看到每个人的移动设备都将具有强大的服务器功能,每一位开发者都可以从中获得新的商机。”
 

- 作者: xhni 2005年08月2日, 星期二 15:19  回复(0) |  引用(0) 加入博采

netOS(net Open Service)

netOS 的目标是为服务的提供者和使用者之间搭建一个方便的桥梁,使得软件对于使用者变成服务,可以方便地从网络上获得,并且通过元数据做到自动组装,尽可能对用户透明。目前只是一个原型项目,为将来基于metadata的网络构件计算积累经验。

运行环境,基于Java和OSGi的运行环境,可以支持构件的动态安装和删除等全面生命周期的管理。提供了SOA的框架。

Metadata,通过对于Java构件进行metadata的包装,使用和LDAP、OSGi MetaType Spec兼容的metadata规范,可以使之作为服务被任何需要的程序使用。提供了一个平台,不同类型的业务可以添加自己的扩展点。
    同时,进行服务发现机制、服务间适配代理等技术和业务模式的尝试。

初步计划:

第一步,提供一个基础平台,并在上面实现"简单服务"的网络化,实践一个最基本的拼写检查业务应用。

第二步,优化架构、扩充功能,实现软件作为网络上的服务,实践包括如下在内的case:可以自己定义文件格式,同时发布打开此种文件格式的服务到网络上.任何人可以使用此服务打开该文件。

第三步,在"服务"中集成C/C++代码,这样任何原有的应用通过"包装"以后,都可以作为服务发布到网络上

已完成的工作

======================================================================
net Open Service Middleware changes file
======================================================================

v0.1 2005.50.10 主要是技术验证工作.初步考虑采用兼容OSGi MetaType Specification 和LDAP标准的MetaData.实现将服务方便的提供给网络上的使用者.采用附带Java file的方法实现了OSGi MetaType Specification里面的规范.

v0.2 2005.06.10 在Oscar1.0.5的框架的基础上实现了netOS v0.2,开发了简单服务平台,实现了可以发布到网络上的中英文字典简单服务,可以使用基本服务的并提供集成服务的拼写检查服务,并且提供了拼写检查客户端, 可以模拟服务的传输和使用.但是架构不好,想要知道一个服务的OSD的话,就要把这个服务start起来。OSGi R3提供的元数据支持太弱,如果要将一个服务的所有信息都放在MANIFEST.MF中将是非常不和谐的,目前manifest.mf作为服务的说明接口,具体的metadata在bundle中.期待R4。对于动态性和metadata的改进,可以放到v 0.5以后,v0.3 主要追求合理/稳定的架构.

- 作者: xhni 2005年07月31日, 星期日 13:24  回复(0) |  引用(0) 加入博采

移动终端应用平台相关JSR
摘要:移动终端应用平台相关JSR 查看全文

- 作者: xhni 2005年07月31日, 星期日 12:02  回复(0) |  引用(0) 加入博采

我的观点(zz from 88)

其实我们现在整个社会就象一个金字塔,
我们不去计较什么政府、企业、学校等的差别。
因为他们之间的权利地位可以转化,不同的是不同组织的宗旨不一样。
我们所关心的就是在这个庞大的金字塔里面我们是哪个位置,
我们每天二十四个小时我们在干什么!
我个人认为有两个极端。
一个是与机器打交道,另外一个极端是与人打交道。
金字塔的最底层就是专门与机器打交道的人组成,
越靠上面,越是要求人际的交往。
我们在看分别的收益,
与机器打交道,最终的收获哪怕最高,10W每年。一般来说是的。
而且一般也要年轻才行,
而与人打交道,就不一定了,
所以说,为什么现在读博士、研究生并不一定好。
就在于这个理论模型。
我们花这么多时间与机器打交道,并且以后将很可能一直下去,
而别的人早就跳出了这一层。
最终我们要看人性来定的,不喜欢交际喜欢做事的人应该读书。
其他的人不得以要早早踏入社会。

- 作者: xhni 2005年07月11日, 星期一 21:48  回复(0) |  引用(0) 加入博采

图灵机和网络
摘要:图灵机 查看全文

- 作者: xhni 2005年07月5日, 星期二 22:03  回复(0) |  引用(0) 加入博采

JSR 277 is now available for review!
摘要:JSR OSGi 查看全文

- 作者: xhni 2005年06月17日, 星期五 15:21  回复(0) |  引用(0) 加入博采