利用动态动作委托运行软件应用_5

文档序号:9672522阅读:来源:国知局
“电路”、“模块”或者“系统”的硬件方面组合的实施例的型式。此外,本发明的各个方面可以取嵌入一个或者多个计算机可读介质的计算机程序产品的型式,该一个或者多个计算机可读介质具有嵌在其上的计算机可读程序代码。可以采用一个或者多个计算机可读介质的任何组合。计算机可读介质可以是计算机可读信号介质或者计算机可读储存介质。计算机可读储存介质可以是但并不局限于是例如:电子的,磁的、光的、电磁的、红外的或者半导体系统、装置或者设备或者上述的任何适当组合。计算机可读储存介质的更具体的例子(非穷举的列表)包括如下:具有一个或者多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPR0M或闪存)、光纤、便携式压缩盘只读存储器(CD-ROM)、光储存器件、磁储存器件或者上述的任意适当组合。在本说明书的语境中,计算机可读储存介质可以是能够含有或者存储指令执行系统、装置或者设备使用的或者结合指令执行系统、装置或者设备使用的程序的任何有形介质。计算机可读信号介质可以包含有计算机可读程序代码以例如基带方式或者一部分载波的方式嵌入内的传播数据信号。该传播数据信号可以取各种型式中的任何一种,包含但不局限于:电磁的、光的或者其任何适当组合。计算机可读信号介质可以是其不是计算机可读储存介质并且能够传送、传播或者输送由指令执行系统、装置或者设备使用的或者结合指令执行系统、装置或者设备使用的程序的任何计算机可读介质。可以利用包含但并不局限于无线、电线、光纤电缆、RF等等或者上述的任何适当组合的任何适当介质发送嵌在计算机可读介质上的程序代码。可以以一个或者多个编程语言的任何组合编写用于执行本发明各个方面的操作的计算机程序代码,所述编程语言包含:面向对象的编程语言,诸如Java、Smalltalk、C++等;以及常规的过程式编程语言,诸如“C”编程语言或类似的编程语言。计算机代码可以完全在有关计算机上执行、作为独立软件封装执行、部分地在该计算机上执行并且部分地在远程计算机上执行或者完全在远程计算机上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络一包括局域网(LAN)或广域网(WAN) —连接到计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
[0082]这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,生成了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机程序指令存储在计算机可读存储介质中,这些指令使得计算机、其他可编程数据处理装置或其他设备以特定方式工作,从而,存储在计算机可读介质中的指令产生一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的指令。也可以把计算机程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以生成计算机实现的过程,从而使得在计算机、其它可编程数据处理装置上执行的指令提供实现流程图和/或框图中的一个或多个方框中规定的功能/动作的过程。
[0083]另外实施例提供包括用于执行上述方法的步骤的装置的系统。
[0084]然而,也可以在基于不同体系架构(例如,局域网、广域网、全球网、蜂窝网或者卫星网)并且采用任何类型的(有线和/或者无线)连接的系统上执行该方法。
[0085] 通常,如果系统具有不同的结构或者包括等同组件,或者其具有其他操作特性,则类似的考虑适用。总之,可以将其每个组件分离为多个元件,也可以将两个或者多个组件一起组合为单个元件;此外,可以复制每个组件,以支持并行执行相应操作。此外,除非另有说明,不同组件之间的任何交互通常不需要是连续的,并且其可以直接的或者是通过一个或者多个中间体间接的。
【主权项】
1.一种在计算机器上运行软件应用的方法(01-017),所述方法包括: 注册(01)委托组件的能力,以在所述计算机器上执行一个或者多个的一组动作,每个所述动作由所述动作的至少一个特性定义, 通过所述委托组件从所述软件应用接收(02-03)对于执行所述动作中的一个的请求,根据所述委托组件的注册,所述请求在运行时绑定到所述委托组件,以及 根据所述至少一个本地组件的可用性,通过所述委托组件将所述动作的执行委托(04-017)到能够执行所述动作的至少一部分的所述计算机器的至少一个本地组件,和/或能够执行所述动作的至少一部分的至少一个远程计算机器的至少一个远程组件。2.根据权利要求1所述的方法(01-017),其中所述委托(04-017)所述动作的执行包括: 从所述本地组件或者所述远程组件接收(012 ;016 ;016.2)所述动作的执行的结果,以及 使所述结果返回(017)返回所述软件应用。3.根据权利要求1或者2所述的方法(01-017),其中当所述计算机器上不存在本地组件时,所述委托(04-017)所述动作的执行包括: 将所述动作的执行委托(013-016 ;013.1-016.2)到所述远程组件。4.根据权利要求1或者3所述的方法(01-017),其中当所述计算机器上存在所述本地组件时,所述委托(04-017)所述动作的执行包括: 测量(05)所述计算机器的至少一个量度,以及 根据所述至少一个量度,将所述动作的执行委托(06-017)到所述本地组件或者所述远程组件。5.根据权利要求1至4中的任何一项所述的方法(01-017),其中所述动作包括在服务的所述背景中的执行。6.根据权利要求5所述的方法(01-017),其中所述动作包括感测物理量。7.根据权利要求6所述的方法(01-017),其中所述委托(04-017)所述动作的执行包括: 将所述物理量的感测委托(013.1-016.1)到第一远程计算机器的第一远程组件, 从所述第一远程组件接收(016.1)所述物理量的测量,以及 通过传递基于所述物理量的测量的值,将所述服务的执行委托(013.2-016.2)到所述本地组件或者第二远程计算机器的第二远程组件。8.根据权利要求7所述的方法(01-017),其中所述计算机器是移动设备,所述第一远程计算机器是位于所述移动设备附近的另一个移动设备,并且所述第二远程计算机器通过网络服务提供。9.根据权利要求1至8中的任何一项所述的方法(01-017),其中所述委托(04-017)所述动作的执行包括: 发现(06-010)位于所述计算机器的附近的每个远程计算机器的可用性,以执行所述动作的至少一部分。10.根据权利要求1至9中的任何一项所述的方法(01-017),其中所述委托(04-017)所述动作的执行包括: 将所述动作的执行委托(013.2-016.2)到模拟所述计算机器的虚拟计算机器的所述远程组件。11.根据权利要求1至10中的任何一项所述的方法(01-017),其中所述委托(04-017)所述动作的执行包括: 使得(014;014.2)所述远程计算机器由所述本地组件的映像至少克隆所述本地组件。12.根据权利要求1至11中的任何一项所述的方法(01-017),其中所述注册(01)委托组件的能力包括: 对于指示所述委托组件的能力的所述动作中的每个动作,对所述委托组件提供(01)基于意图过滤器的清单文件,以执行所述动作。13.—种当在计算机器(100)上执行所述计算机程序时使得所述计算机器执行根据权利要求1至12中的任何一项所述方法的所述步骤(01-017)的计算机程序(320)。14.一种包括用于执行权利要求1至12中的任何一项所述方法(01-017)的装置(320)的系统(100)。
【专利摘要】提供了一种在计算机器上运行软件应用的解决方案。相应方法(O1-O17)包括:注册(O1)委托组件的能力,以在计算机器上执行一个或者多个的一组动作,每个动作由该动作的至少一个特性定义;通过委托组件从软件应用接收(O2-O3)用于执行动作中的一个的请求,根据委托组件的注册,请求在运行时绑定到委托组件;以及根据至少一个本地组件的可用性,委托组件将动作的执行委托(O4-O17)到能够执行动作的至少一部分的计算机器的至少一个本地组件和/或者能够执行动作的至少一部分的至少一个远程计算机器的至少一个远程组件。
【IPC分类】G06F9/50
【公开号】CN105431826
【申请号】CN201480043044
【发明人】C.马林利, L.皮切蒂, A.多纳特利, G.兰弗朗奇
【申请人】国际商业机器公司
【公开日】2016年3月23日
【申请日】2014年7月7日
【公告号】US20160164960, WO2015014570A1
当前第5页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1