[发明专利]用于支持访问活动对象的方法和系统无效
申请号: | 200580041962.0 | 申请日: | 2005-12-05 |
公开(公告)号: | CN101073061A | 公开(公告)日: | 2007-11-14 |
发明(设计)人: | S·雷曼 | 申请(专利权)人: | 皇家飞利浦电子股份有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54 |
代理公司: | 永新专利商标代理有限公司 | 代理人: | 王英 |
地址: | 荷兰艾*** | 国省代码: | 荷兰;NL |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 支持 访问 活动 对象 方法 系统 | ||
本发明涉及如何在计算平台之间访问活动对象,特别涉及但不限于一种方法,用于通过JavaTM本地接口(JNI)为JavaTM应用程序提供到SymbianTM操作系统环境中活动对象的访问,从而允许控制返回到进行调用的JavaTM应用程序。
SymbianTM是智能电话的全球工业标准OS(操作系统)。在图1中原理性地说明一个智能电话1实例。智能电话是具有高级功能的移动电话,除了常见的通信功能以外,它通常还支持电子邮件和高级浏览功能。它还可以有照相机2。
SymbianTM操作系统大部分是用面向对象的计算机语言C++编写的。面向对象的语言通常都提供一些多任务手段。例如,JavaTM语言,另一种众所周知的面向对象语言,主要通过多线程来支持多任务功能,这种多线程允许在多个不同的线程中同时执行多个任务。
SymbianTM操作系统支持抢占式多线程,因此它能够同时运行多个应用程序和服务程序。在一个线程中,用活动对象来提供非抢占式多任务支持,这就使得对于多数应用程序和服务程序而言不再需要多线程编程。大量的SymbianTM类是从活动对象基类CActive导出的。可以将活动对象定义为在它自己的控制线程中运行的对象。在SymbianTM操作系统中,活动对象是从基类CActive导出的任意对象。
在图2中示意性地说明SymbianTM操作系统中线程和活动对象之间的关系。系统调度程序10在多个线程11、12、13之间支持抢占式多线程功能。抢占式多线程指的是给每个线程一个固定的CPU时间片,在这个时间片之后将它挂起,从而使下一个线程能够运行。通过足够频繁地在线程之间进行切换,能够产生线程是连续执行的这样一个错觉。
相反,在线程11中,可能有多个活动对象20、21、22。每个线程都可以有一个活动的调度程序25,用于在活动对象之间调度CPU时间。活动的调度程序25采用非抢占式方法,意思是不挂起正在执行的活动对象,而是允许完成它的任务,并将控制返回给活动的调度程序。
SymbianTM操作系统为了支持上述活动对象方式而禁用上述多线程方式。在这个操作系统中,编写支持协作活动对象系统的程序,比编写支持协作线程系统的程序更加容易。线程之间的通信比活动对象之间的更慢,也更加困难,并且活动对象的运行时间成本明显低于线程的运行时间成本。此外,从处理器工作负荷的角度看,产生和销毁活动对象的效率远远高于产生和销毁线程的效率。因此,SymbianTM应用程序通常都使用包含单个线程的过程,在这个线程中具有多个活动对象。
由于在计算平台之间的可移植性,JavaTM语言已经应用非常广泛,非常流行,特别是对于GUI(图形用户界面)的开发。因此,常常将JavaTM用于为SymbianTM平台开发应用程序,这样做提供了一种JavaTM实现。但是,为了保持其可移植性,没有将JavaTM设计成直接使用较低级的设备功能,例如,访问照相机、蓝牙或红外设备的设备驱动程序。JavaTM访问这种本地功能的常见方法是通过JavaTM本地接口(JNI)31,它在JavaTM环境30和本地SymbianTM环境32之间提供“翻译层”,如图3所示。
但是,在其SymbianTM实现中,没有将JNI31设计成与活动对象相互作用。
考虑到用活动对象代替线程所获得的技术优点,有必要允许JavaTM程序访问SymbianTM操作系统中的活动对象。
本发明的实施例提供一种机制,用来支持通过JNI从JavaTM访问活动对象。具体而言,可以将本发明应用于一个计算平台上的应用程序不能直接访问第二计算平台上活动对象的任意环境。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于皇家飞利浦电子股份有限公司,未经皇家飞利浦电子股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200580041962.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:通过施用RNA改变细胞性质的方法
- 下一篇:织机和开口机的运行方法