移动终端的分层结构的利记博彩app

文档序号:6403462阅读:224来源:国知局
专利名称:移动终端的分层结构的利记博彩app
技术领域
本发明通常涉及无线电信领域,尤其涉及无线电信系统移动终端的软件体系结构。
背景技术
本申请主张美国临时专利申请序列号60/357,366(2002年2月15日提交)、60/357,291(2002年2月15日提交)及60/412,756(2002年9月23日提交)的权益。
自二十世纪八十年代首次引进蜂窝电信系统以来,该系统中所用的移动终端(移动站)已经变得越来算复杂。最初,移动终端主要设计用来提供音频电话服务;即,接收并发送语音通信。近些年,移动终端已经发展到包括传输与语音电话呼叫毫不相关的用户数据的能力。这种用户数据包括,例如,要在通过个人计算机(PC)启动的拨号网络连接上传输的数据。
目前,正在为未来的蜂窝电信系统开发的所谓“第三代”(3G)系统。3G系统将组合高速Internet接入和传统的语音通信,除语音通信外还将向用户提供对Internet浏览的访问、流式音频/视频、定位、视频会议以及许多其它功能。
建立了第三代伙伴计划(3GPP)以确保全球正在开发的若干3G系统之间的兼容性。3GPP正在开发通用移动电话系统(UMTS),以提供包括能够在世界上任何地方传递语音、数据和多媒体的地面和卫星系统的3G系统。
正在通过3GPP标准化包括进蜂窝电信系统中的大量增加的功能已经对将要用在系统中的移动终端的开发者提出了实质的要求。而移动终端是一个在规模、存储和功耗上都受限的“资源稀缺”环境的事实更加重了这种要求。
传统上,移动终端制造商已经充分地设计、制造并销售包括基本的终端操作所需的软硬件以及根据制造商或特定用户的市场需求感觉提供他们想要的特征和功能所需软硬件的移动终端。这种途径没有提供快速适应市场需求的快速变化或满足多用户的不同需求的灵活性。
此外,并入移动终端的软件通常被组织成包括多个通过调用彼此输出的接口而相互通信的多个软件模块的体系结构而组织。这种体系结构的问题是没有具体的规则来区分客户端和服务程序端,导致难以“可视化”组织软件的方式。其结果是,目前的体系结构方案会导致相同层上各个模块中客户程序和服务程序功能的混合;并且这种混合会导致软件配置、开发和维护中的严重问题。
因此,对无线电信系统的移动终端以及以这种方式组织从而能够方便轻松地可视化和理解其中的软件的其它应用软件需要有一种软件体系结构。

发明内容
本发明为无线电信系统的移动终端以及以这种逻辑方式组织,从而能够方便轻松地可视化和理解其中的软件的其它应用软件提供一种软件体系结构。
依照本发明的软件体系结构包括,组织在从提供较高级服务的软件层到提供较低级服务的软件层依次排列的多个软件层中的软件。每个软件层包括至少一个软件模块。该软件体系结构还包括接口装置,用于允许所述多个软件层中的软件模块之间按照一组定义的相关性规则通信。
本发明认识到,通过把软件组织在从提供较高级服务的软件层到提供较低级服务的软件层依次排列的多个软件层中并且定义一组多层中的软件模块能够通信的相关性规则,会更易于可视及理解软件体系结构中的相关性。而这将使得更易于配置、开发和维护软件;以及更新或者更改软件。
从下面结合附图给出的详细描述可以清楚本发明的更多优点和特定细节。
附图描述

图1是示意性地说明无线电信系统移动终端的平台系统以帮助阐明本发明的框图;图2是示意性地说明图1的平台系统的移动终端平台组件以进一步帮助阐明本发明的框图;图3是依照本发明的一个示例实施方案示意性地说明一种软件体系结构的框图;图4是依照本发明的另一示例实施方案说明图3的软件体系结构的软件模块可以用来通信的一组相关性规则的流程图;图5是依照本发明的另一示例实施方案示意性地说明图1和2的移动终端平台组件的软件体系结构的具体实现的框图;图6是依照本发明的一种示例实施方案示意性地说明协议映射,尤其是通过蓝牙或GSM电路交换数据的拨号连网的协议映射,的框图;图7是依照本发明的另一示例实施方案示意地说明构造软件体系结构的方法的步骤的流程图。
本发明示例实施方案详述图1是示意性地说明无线电信系统移动终端的平台系统以帮助阐明本发明的框图。平台系统通常由标号10表示,并且包括移动终端平台组件12及已经在移动终端平台组件中装载、安装并运行的一个或多个应用(即,应用软件)14(这里所用的术语“装载”是指包括通过接口(如从Internet下载或安装硬件芯片)可以把应用软件和移动终端平台组件结合在一起的任意机制)。平台系统10适合并入移动终端中,通常由虚线16指示。
移动终端平台组件12包括软件服务部件22、硬件部件24和接口部件26.
软件服务部件22通常包括多个精心构造的功能软件单元,以提供通过接口部件26呈现给用户的服务。在图1的平台系统中,多个数软件单元包括多个垂直定向的功能软件栈,包括UMTS访问服务软件栈30、数据通信服务软件栈32(下文中将更完整地描述它)、MMI(人机界面)服务软件栈34、应用平台服务软件栈36和操作及服务软件栈38.
硬件部件24包括一组与它们各自的功能软件栈相关并由其控制的硬件单元。在图1所示的平台系统中,硬件单元包括UMTS访问服务硬件40、数据通信服务硬件42、MMI服务硬件44、应用平台服务硬件46以及操作和服务硬件48.
接口部件26包括中间件服务层,它包括一个或多个用于具体应用开发的应用软件接口(API)选项。这些API可以包括标准化(非本地)接口、事实上的标准化接口和/或开放本地接口。例如,标准化接口可能包括符合MIDP/CLDC(移动信息设备特征/互连有限设备配置)的J2ME(JAVA 2微型版本)环境。中间件服务层还起到通过一个或多个接口分离组件12和应用程序的作用,并且可以提供下文中将要描述的其它服务。
平台系统10的移动终端组件12适合作为与应用软件14(这里所用的术语“应用软件”可以是提供用户希望拥有的功能的任何软件)分离的完整、封闭的单元进行设计、实现(装配)和测试。因此用户(这里所用的术语“用户”包括制造商、终端用户和其它顾客和用户)能够开发或获得它们自己的应用软件并随后把该软件加入到移动终端平台组件12,以便完善平台系统10。因此,可以把移动终端平台组件12销售或交付给多个都希望在系统中通过装载、安装并运行它们自己的应用软件完善平台系统10,以便满足它们自己对平台系统的特定需求的不同用户。
软件服务部件22的软件栈30-38以及它们的相关硬件单元40-48定义了构成已经清楚地定义了功能和接口的可管理部分(软件模块和硬件单元)的功能栈。移动终端平台组件12的用户不必关心功能栈的内部细节,但可以通过中间件服务层26访问这些栈,以获取设计应用软件所需的功能。
图2是示意性地说明图1的移动终端平台组件12的组成图,以进一步帮助阐明本发明。如图所示,移动终端平台组件12是通过在主CPU50中执行的软件控制的。主CPU50可以包括一个或多个处理器,例如微处理器、微可编程处理器或DSP(数字信号处理器)。52是MMI服务软件栈34的DSP。软件部件22的软件栈30-38各自包括硬件驱动程序软件60-68以操作与各个栈相关的硬件单元。如图2所示,由功能软件栈控制的硬件单元的例子包括接收器、发送器、功率和频率控制器、GSM收发器、蓝牙模块、多种通信和人机外设、电源管理和SIM接口、存储器和安全硬件。
在由此同时提交的共同受让的美国专利申请序列号[AttorneyDocket 53807-00045USPT号]中描述了平台系统10的更多具体特征和细节,在此并入该申请的公开作为参考。
并入移动终端的软件通常被组织在包括多个通过调用彼此的输出接口而相互通信的软件模块的体系结构中。这种体系结构的问题是,没有具体的规则区分客户程序和服务程序,这会导致难以“可视化”组织软件的方式。结果是,目前的体系结构方案会导致相同级别的各个模块中客户程序和服务程序功能的混合;并且这种混合会使得配置、开发和维护软件非常困难。
本发明提供一种软件体系结构,在这种体系结构中软件被以逻辑方式组织并且可以按照一组定义的相关性规则通信,以使软件能够易于可视化并易于理解。
图3是依照本发明的一个示例实施方案示意性地说明一种软件体系结构的框图。该软件体系结构通常由引用标号100表示;并且,在图3所示的示例实施方案中,该软件体系结构包括移动终端平台组件的软件服务部件102的软件和中间件服务层104的软件。如图3所示,除了被组织成如根据图1和2所描述的多个垂直的功能软件栈(图3中描绘了两个功能软件栈106和108)之外,软件服务部件102还被安排定义多个水平软件层,以使中间件服务层104的软件和软件服务部件102的软件一起定义分层软件体系结构100.
依照本发明的示例实施方案的软件体系结构不同于标准ISO/OSI(ISO开放系统互连)模式的不同之处在于,本发明包括多个水平划分的功能软件单元,它们补充多个垂直划分的软件层。水平划分对独立模块(服务)部件的创建有很大贡献。
在软件体系结构100中,大多数水平软件层被以从较高级软件服务层到较低级软件服务层的降序排列。最高层是中间件服务层104,它如上所述向移动终端平台组件提供一个或多个接口并且将平台组件同使用它的应用程序分开。中间件服务层104还可以为下文中将要描述的应用提供其它环境服务。
软件服务部件102包括一个或多个软件层以为应用提供不同的服务。所提供的层数取决于将要提供的服务,并且软件服务部件102能够包括任意期望的层数。在图3的示例实施方案中,明确地描绘了层112、114、116和118,但在120以虚线示意性地描绘了包括附加层的能力。
软件服务部件102(并且因此也是软件体系结构)的最低层的相邻116包括硬件抽象层(HAL),软件服务部件的最低层118包括基本系统服务层(BSySL)。基本系统服务层包含移动终端平台组件的所有模块都需要的服务,并且硬件抽象层封装了硬件相关性。
软件体系结构100的软件被组织在多个软件模块中,例如模块122、124和126.软件体系结构的每个软件层可以包括一到多个软件模块,但是,任意特定层及任意特定垂直软件栈中的所有软件模块将有相同的抽象级别。另外,单个软件模块只能驻留在一个垂直功能栈中,并且只能驻留在该栈中的一个水平层中。
每层中的不同模块实现了每个功能类别到该层的接口。这些接口一起被集中成与模块实现分离的每层的软件背板(SwBP)中。特别地,在软件模块和SwBP中的接口之间没有硬耦合;并且这允许在不影响到接口的客户程序的情况下可以改变特定的软件模块和/或接口的任何实现。图3中,软件层104、112、114、116和118的SwBP分别由引用编号130、132、134、136和138表示;并且可能的附加层120(以虚线表示)的SwBP由引用编号140表示。
允许软件体系结构100的不同软件层中的不同软件模块按照一组定义的相关性规则通信。依照本发明的一个示例实施方案,并且如图4的图150所示,相关性规则如下-一层中的软件模块只能调用它自己的SwBP或比它所在层低的层中的SwBP中的接口中的功能;-一个软件模块绝不能调用它自己所在层之上的SwBP中的接口中的功能,不管该模块属于哪一层;-一个软件模块可以调用相同功能栈中它所在层的SwBP中的接口中的功能;-对信道事件或数据流的方向没有限制。它们可以到任何方向。
在本发明的一个可选实施方案中,可以提供一个附加相关性规则,以允许一个软件模块调用不同功能栈的相同层中的另一软件模块中的功能。在特定环境中可能想要这个附加规则来限制功能栈中的层数。
依照上述相关性规则,在该软件体系结构中软件层之间的硬件相关性总是向下的。通过层向上的通信由事件处理,但是,为了接收事件,模块必须有预定。因此,在较低层(发送事件)的事件检测器和较高层(接收事件)的事件用户之间没有任何硬相关性。因此,保持了低层对高层的独立性。
通过把移动终端平台组件的软件组织成多层,并通过定义一组不同层的软件模块通信的相关性规则,就提供了一种便于可视化和理解软件的软件体系结构。这种体系结构带来了很多优点。例如,与所定义的相关性规则组合在一起的水平软件层迫使开发者进行客户程序-服务程序的设计,而这在配置软件时非常重要。还更易于在抽象层配置软件,因为可以在不影响低层的情况下去掉高层。
与所定义的相关性规则和水平功能栈组合在一起的软件层使得易于按功能配置软件,因为栈是按功能排列的并且可以在不影响其它栈内部的情况下移去任何特定的栈。
层接口(SwBP)和层实现(模块)的分离简化了模块实现的交换并且层内部的实现作为模块由SwBP封装起来。这还简化了版本管理,因为只要接口不变,模块实现的变化就不会对SwBP有任何影响。
图5是依照本发明的另一示例实施方案示意性地说明图1和2的移动终端平台组件12的软件体系结构的一种具体实现的框图。在图5中,该软件体系结构由编号200指示,并包括多个层,包括中间件服务层26和软件服务部件层22。每层包括至少一个模块,例如模块230、232和234。软件服务部件层22包括应用服务程序层202以提供应用服务,平台服务层204,以为应用提供平台特定的服务,平台协议层206以提供会话协议和应用特定协议,传输层208以提供音频访问/控制、数据通信传输协议和消息传输协议,数据访问层210以提供外部数据IF访问、结构化的存储服务以及其它低层平台支持服务,逻辑驱动层212和物理驱动层214.
逻辑驱动层212构成硬件抽象层,它隔离了移动终端平台组件的硬件和软件之间的相关性。只有物理驱动层与硬件的细节(即,寻址ASIC硬件中的哪些寄存器)相关。逻辑驱动层212提供到硬件的逻辑映射,即这一层提供移动终端平台组件的硬件和软件部分之间的一个桥梁。
中间件服务层26为应用开发提供并支持一系列不同的应用环境。每种应用环境有它自己的特征并定义如下-开发应用的方式(编程语言支持、编译和链接)-执行应用的方式(例如,解释或本地代码执行)
-提供的功能服务-使用中的潜在约束通过提供多个应用环境选择,提供了需求(例如价格、使用方便、推向市场的时间、功能集合、大小、便携性等等)各不相同的一系列产品。如图5所示,由中间件层提供的这些环境可以包括JAVA EXE环境领域、开放应用软件框架(OAF)领域和开放平台API(OPA)领域。
在由此同时提交的共同受让的美国专利申请序列号[AttorneyDocket 53807-00024USPT号]中描述了平台系统10的更多具体特征和细节,在此并入该申请的公开作为参考。
如图5所示,不同层的不同模块之间的通信是通过像SWBP 222、224、226和228这样的软件背板实现的。
如前所示,移动终端平台组件的软件服务部件22包括数据通信服务软件栈32。依照本发明的一种示例实施方案,数据通信服务软件栈32提供多种数据通信服务,并支持包括Internet协议(IP)、电信设备控制协议、拨号连网和链路管理协议以及外部接口多路复用协议在内的多种协议,以便提供这些服务。在数据通信服务软件栈提供的大量服务中包括涉及连接移动终端到PC(例如,为了通过蓝牙、IrDA、USB和类似接口进行对象交换)的服务、涉及通过移动终端连接PC到Internet(例如,为了拨号连网)的服务、涉及连接移动终端到Internet(例如,为了WAP、电子邮件、流媒体和Internet文件下载)的服务、以及涉及连接移动终端到另一移动终端(例如,为了视频会议或其它目的)的服务。
图6是依照本发明的一个示例实施方案示意性地说明协议映射(更准确地说,是通过蓝牙在GSM电路交换数据上进行拨号连网的协议映射250)的一个实例的框图。对GSM电路交换数据来说,移动终端使用空气接口之上的无线电链路协议(RLP)。RLP由重传机制确保数据的无错传输。RLP使用向前纠错(FEC)处理的在传输期间的比特误差。在RLP之上使用面向第2层延迟字符的协议(L2RCOP)并实现V42bis。
数据通信服务软件栈32用来连接移动终端平台组件的软件体系结构中的不同模块到外部世界。它提供了方便识别哪些模块的路标。例如,如果某一标准中有变化,能够容易地识别出受该标准变化影响的特定模块以便也能够改变它们。
图7是依照本发明的另一示例实施方案示意性地说明构造一种软件体系结构的方法步骤的流程图。该方法由引用编号300指示,并且包括在从提供较高层服务的软件层到提供较低层服务的软件层依次排列的多个软件层中组织软件的步骤(步骤302)。优选地,该组织步骤还包括在至少一个垂直功能软件栈中组织软件。该方法还包括提供接口装置,以允许多个软件层按照一组定义的相关性规则进行通信的步骤(步骤304)。
尽管已经描述的构成了本发明的示例实施方案,但应该认识到在不偏离本发明的前提下本发明是可以变化的。例如,尽管已经把依照本发明的软件体系结构描述为包括多个水平层,每层有一个或多个模块,但应该理解特定的模块本身可以包括多个设置在多个层中的子模块。另外,水平功能栈的数量和特性也可根据特定应用的期望或需要而变化。此外,尽管这里已经描述的软件体系结构主要用在第三代蜂窝电信系统的移动终端中,但该体系结构也可胜于第二代和其它蜂窝电信系统,也可用在其它无线电信系统(例如蓝牙系统)以及其它应用中。通常,在开发复杂的软件系统时本发明的软件体系结构尤其适用。因为本发明可以多种方式变化,应该理解本发明应该只被限制在所附权利要求的范围所要求的范围中。
权利要求
1.一种软件体系结构包括组织在从提供高层服务的软件层到提供低层服务的软件层依次排列的多个软件层中的软件;每个软件层中至少一个软件模块;和允许在所述多个软件层中的软件模块之间按照一组定义的相关性规则通信的接口装置。
2.权利要求1的软件体系结构,其中接口装置包括每个软件层一个软件背板,每个软件背板和它各自的软件层中的至少一个软件模块有接口。
3.权利要求2的软件体系结构,其中所述定义的相关性规则集合包括一个软件层中的软件模块只能调用它自己的软件背板或比它自己的软件背板低的软件层的软件背板中的接口中的功能;并且一个软件模块决不能调用比它自己的软件层高的软件层的软件背板中的接口中的功能。
4.权利要求3的软件体系结构,其中所述软件还被组织在至少一个垂直功能软件栈中。
5.权利要求4的软件体系结构,其中定义的相关性规则集合还包括一个软件层中的软件模块可以调用它自己的软件层的软件背板的接口以及相同功能软件栈中的功能。
6.权利要求5的软件体系结构,其中定义的相关性规则集合还包括一个软件层中的软件模块可以调用它自己的软件层的软件背板中的接口以及不同功能软件栈中的功能。
7.权利要求1的软件体系结构,其中中间件服务层包括所述多个软件层中的最高软件层,中间件服务层向所述软件体系结构提供至少一个接口。
8.用于无线电信系统的一种移动终端,该移动终端包括软件服务部件,该软件服务部件的软件体系结构包括组织在从提供较高层服务的软件层到提供较低层服务的软件层依次排列的多个软件层中的软件;每个软件层中至少一个软件模块;和允许所述多个软件层中的软件模块之间按照一组定义的相关性规则通信的接口装置。
9.权利要求8的移动终端,其中接口装置包括,每个软件层的一个软件背板,每个软件背板和它各自的软件层中的至少一个软件模块有接口,并且其中定义的相关性规则集合包括一个软件层中的软件模块只能调用它自己的软件背板或比它自己的软件背板低的软件层的软件背板中的接口中的功能;并且一个软件模块决不能调用比它自己的软件层高的软件背板中的接口中的功能。
10.权利要求9的移动终端,其中软件还被组织在至少一个垂直功能软件栈中,并且其中定义的相关性规则集合还包括一个软件层中的软件模块可以调用它自己的软件层的软件背板的接口以及相同功能软件栈中的功能。
11.权利要求10的移动终端,其中定义的相关性规则集合还包括一个软件层中的软件模块可以调用它自己的软件背板的接口以及不同功能软件栈中的功能。
12.权利要求10的移动终端,其中至少一个垂直功能软件栈包括数据通信服务软件栈。
13.权利要求12的移动终端,其中数据通信服务软件栈提供多种数据通信服务,并支持包括Internet协议、电信设备控制协议、拨号连网和链路管理协议以及外部接口多路复用协议中的一种或多种,以提供这些服务。
14.权利要求8的移动终端,其中中间件服务层包括所述多个软件层中的最高软件层,中间件服务层,向软件体系结构提供至少一个接口。
15.权利要求14的移动终端,还包括由所述软件服务部件控制的硬件服务部件。
16.权利要求8的移动终端,其中无线电信系统包括蜂窝电信系统。
17.权利要求16的移动终端,其中所述蜂窝电信系统包括第三代蜂窝电信系统。
18.用于无线电信系统的移动终端的一种平台组件,包括软件服务部件;由该软件服务部件控制的硬件服务部件;和向平台组件提供接口的中间件服务部件,其中软件服务部件的软件和中间件服务部件的软件被组织在一个软件体系结构中,该软件体系结构包括组织在从提供较高层服务的软件层到提供较低层服务的软件层依次排列的多个软件层中的软件;每个软件层中至少一个软件模块;和允许多个软件层中的软件模块之间按照一组定义的相关性规则通信的接口装置。
19.权利要求18的平台组件,其中所述接口装置包括每个软件层的一个软件背板,每个软件背板和它各自的软件层中的至少一个软件模块有接口,并且其中定义的相关性规则集合包括一个软件层中的软件模块只能调用它自己的软件背板或比它自己的软件背板低的软件层的软件背板中的接口中的功能;并且一个软件模块决不能调用比它自己的软件层高的软件背板中的接口中的功能。
20.权利要求19的平台组件,其中软件还被组织在至少一个垂直功能软件栈中,并且其中定义的相关性规则集合还包括一个软件层中的软件模块可以调用它自己的软件层的软件背板的接口以及相同功能软件栈中的功能。
21.权利要求20的平台组件,其中定义的相关性规则集合还包括一个软件层中的软件模块可以调用它自己的软件层的软件背板中的接口以及不同功能软件栈中的功能。
22.权利要求20的平台组件,其中至少一个垂直功能软件栈包括UMTS访问服务软件栈、数据通信服务软件栈、人机界面栈、应用平台服务栈和操作及服务软件栈中的至少一个。
23.权利要求18的平台组件,其中中间件服务部件为装载、安装和运行软件提供至少一个接口,以提供移动终端平台系统。
24.权利要求18的平台组件,其中无线电信系统包括蜂窝电信系统。
25.权利要求24的平台系统,其中蜂窝电信系统包括第二代蜂窝电信系统。
26.组织一种软件体系结构的方法包括把软件组织在从提供较高层服务的软件层到提供较低层服务的软件层依次排列的多个软件层中,每个软件层中至少一个软件模块;并且提供接口装置,以允许所述多个软件层中的软件模块之间按照一组定义的相关性规则通信的接口装置。
27.权利要求26的方法,其中接口装置包括每个软件层的一个软件背板,每个软件背板和它各自的软件层中的至少一个软件模块有接口,并且其中定义的相关性规则集合包括一个软件层中的软件模块只能调用它自己的软件背板或比它自己的软件背板低的软件层的软件背板中的接口中的功能;并且一个软件模块决不能调用比它自己的软件层高的软件背板中的接口中的功能。
28.权利要求27的方法,其中组织还把软件组织在至少一个垂直功能软件栈中。
29.权利要求28的方法,其中定义的相关性规则集合还包括一个软件层中的软件模块可以调用它自己的软件层的软件背板中的接口以及不同功能软件栈中的功能。
30.权利要求29的方法,其中定义的相关性规则集合还包括一个软件层中的软件模块可以调用它自己的软件层的软件背板的接口以及不同功能软件栈中的功能。
全文摘要
用于无线电信系统移动终端和其它应用的一种软件体系结构。该软件体系结构包括多个从提供高层服务的软件层到提供低层服务的软件层依次排列的软件层(每层中至少一个软件模块),以及允许软件模块间按照定义的相关性规则通信的接口装置。
文档编号G06F9/54GK1714339SQ03804026
公开日2005年12月28日 申请日期2003年2月13日 优先权日2002年2月15日
发明者J·林德, R·达尔曼, S·鲁内森, S·韦伯 申请人:艾利森电话股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1