手机软件测试最佳实践
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.1 移动终端设备简介

随着移动通信网络的发展,移动终端不仅可以用来打电话、发消息,还可以上网,使用多种多样的数据业务,而且多种在计算机领域中应用成熟的技术也出现在移动终端上。移动终端不仅是一部无线电话,也是集通信、娱乐、办公等多种功能于一体的智能终端。

1.1.1 概述

通常,移动终端系统可以被看做是一种具有无线通信功能的嵌入式计算机系统。包含支持通用嵌入式计算机系统的必要组件、用来执行通信任务的特别组件和面向应用的高层组件。从功能角度讲,一个移动终端系统可以由多个子系统组成,如图1.1所示。

图1.1 移动终端系统组成

子系统通常有以下几个部分:通信子系统、操作系统子系统、内存子系统、应用子系统、应用与通信接口子系统、多媒体子系统、安全子系统和电源管理子系统。每一个子系统都与其他子系统相互连接通信。不同终端可以采用不同的体系结构,相应地也就采用不同的子系统划分方式。

1.移动通信终端体系结构

(1)通信子系统

通信子系统包含无线通信协议软件及必要的数据访问协议,可支持蜂窝广域网和局域网语音与数据通信。

① AT分析程序

AT命令分析程序在GSM和WCDMA/UMTS的标准中都进行了详细说明。AT接口的标准为基本协议堆栈的实现提供了一个基础摘要。AT分析程序可与协议堆栈一起实施,也可使用专有协议堆栈,或者使用服务访问控制器接口进行独立开发来支持多协议堆栈实施。

② 服务访问控制器(SAC)

服务访问控制器(SAC)可提供专有协议堆栈接口。SAC通过应用子系统内的多个实体提供了一个单独的协议堆栈接入点。服务访问层(SAL)和数据链路层(DL)用于支持逻辑通信在通信子系统中的发送和接收。

③ SIM管理程序

SIM管理程序是一个单独的公共接入点,可用来访问SIM卡中的信息。它通过多个实体访问SIM卡。协议堆栈接口位于协议堆栈模块内部,并且通常是专用的。它还可以通过SAC或AT分析程序向蜂窝子系统的外部输出一整套功能,以支持应用子系统访问SIM数据和功能。对于所有通过SIM卡来进行用户认证和鉴权的蜂窝技术,该模块都是强制性的。如果不需要SIM卡,则协议堆栈中必须含有可提供相同功能的模块。

④实时操作系统

实时操作系统是可选的,可以根据实际情况,采用轻型内核或功能强大的操作系统来进行替换。但这种情况要求在通信子系统内存中执行的线程不受应用子系统内的操作系统的控制。

(2)操作系统子系统

操作系统子系统包含基础任务的执行,诸如输入信息识别、显示屏信息输出、保存文件和目录记录等。操作系统子系统还可以对硬件提供管理和维护。

(3)内存子系统

内存子系统管理并控制静态和动态存储。

(4)应用子系统

用户应用在应用子系统内执行。这一子系统提供了通用的编程设计和执行环境,并不依赖于移动终端的底层通信技术。通信子系统的通信服务接口也常驻在应用子系统内。

(5)应用与通信接口子系统

应用子系统中的许多应用都需要靠通信子系统的支持才能和外界联系以实现各种功能。在终端系统内部需要由应用与通信的接口子系统来完成这个任务,一方面完成从应用子系统向通信子系统传递将要传送出去的数据,另一方面将从通信子系统收到的数据传递给适合的应用。

(6)多媒体子系统

多媒体子系统软件可控制不同平台技术,允许利用图形和音频媒体并把它们相结合,以用于通信目的。数据流音频和视频只是多媒体服务的两个实例,由多媒体子系统支持。

(7)安全子系统

安全子系统的软件组件为集成的硬件安全构建模块、软件安装功能和框架提供了接口。这些服务可支持:

●构建可信且安全的平台;

●进行安全交易;

●确保用户及其数据的安全与机密性。

(8)电源管理子系统

电源管理子系统负责控制处理器和设备电源状态,以及支持应用和设备驱动程序的接口,从而满足性能和功耗需求。

2.移动终端体系结构发展

(1)分离应用和通信子系统

终端系统体系结构应把对无线通信协议的处理从用户应用程序中分离出来。这种分离既可以基于硬件实现也可以基于软件实现。这种情况下用户应用和其他驻留在应用子系统内的软件或硬件模块都不能破坏通信子系统的完整性。同时,通信子系统也不能破坏用户数据和应用。将应用程序与通信子系统分离可以加快开发、部署、升级或修改应用的速度。

(2)支持互联网协议

终端系统需要能够支持通用的互联网协议,诸如目前的IPv4及未来的IPv6等。现阶段终端设备只可用于IPv4,当IP网将来升级到IPv6阶段时,新的终端设备将可支持IPv4和IPv6标准。终端系统还将能够支持更多的互联网协议,诸如TCP、UDP、FTP、Telnet、HTTP等。终端可支持多种互联网内容格式和语言,如HTML、X-HTML、XML等。利用这些功能应用开发商将会开发出可与台式机相媲美的功能强大的应用。

(3)支持开放的操作系统

终端系统应支持开放的操作系统。随着终端处理能力的增强,无线互联网带宽的扩大,运行于移动终端上的应用必将越来越丰富。但终端厂商不可能开发出所有功能完备的应用软件,在出厂之前将这些应用软件都预装在终端里面。即使终端制造商开发能力足够强,可以提供足够多的应用软件,但终端一旦销售到用户手中,便不再受终端制造商的掌控。当新业务出现,要求终端支持更多更新功能时,终端能够随时下载安装新的应用软件,提升终端能力,便成为极为迫切的需求。终端支持开放的操作系统,可以促进终端应用和移动业务的发展。运营商推出新业务之时就不必再过多的顾忌市面上销售的终端有多少能够支持,用户已购的终端又有多少能够支持这个业务。用户也不必因为自己的手机陈旧而遗憾不能享用新业务。

(4)操作系统标准化

终端操作系统标准化对于移动增值业务产业也至关重要。应用软件基本上都是基于操作系统提供的通用接口开发出来的。如果接口不同,应用软件就必然不同。终端操作系统的接口有多少种,应用开发商要满足所有用户,就必须为同一种应用开发多少种软件版本。操作系统的种类越多,整个产业链为此付出的成本越大。对用户而言,也带来了极大的不便,用户要准确了解所用终端的品牌型号,以便在使用业务时能够对号入座。这种开发方式严重阻碍了移动应用的发展。因此推动移动终端操作系统标准化已经势在必行。

(5)软件平台与硬件平台分离

终端系统的底层硬件平台与软件平台应该相对独立,并通过标准的接口相互通信。终端操作系统及应用可以安装在任意基于标准平台的终端上。对于终端设备商及运营商而言,将具有更多自由度,可以自由选择性价比高、适应产品定位的硬件平台及软件平台的组合。

1.1.2 硬件设计平台介绍

基本终端和功能终端的硬件平台主要由射频模块和基带处理模块组成,射频模块主要负责射频信号滤波、放大、调制解调等功能。基带处理部分分为模拟基带和数字基带两部分。模拟基带主要承担话音A/D、D/A转换,及数字控制信号的D/A转换等工作。数字基带还包括微控制器、数字信号处理器、存储器和硬件逻辑等。微控制器主要采用ARM7处理器,负责完成应用层、网络层和数据链路层的处理,控制移动终端的外围电路连接及整个通信协议栈的实现,倾向于系统控制。数字信号处理器主要用于物理层、数据链路层的处理,负责话音信号的编解码处理,倾向于数字基带信号的处理。存储部分包括ROM和RAM。硬件逻辑主要指一些外围电路,包括键盘控制器电路、显示电路,各种外部接口电路等。

智能终端拥有开放式操作系统并能扩展第三方应用功能,可下载大量应用程序来扩展自身用户界面和多媒体、数据业务功能,故一般为双CPU结构:通信处理器和应用处理器,应用处理器通过AT指令与通信处理器进行控制和交互。

通信处理器保留了基本和功能终端的数字基带部分,即MCU+DSP结构,MCU实现高层协议,DSP完成基带功能,适应各种无线接口协议标准,选择适当的移动通信网络,建立和维护网络连接,实现话音和数据通信。

应用处理器采用嵌入式操作系统并加载多种协议,以支持各种业务,如MPEG-4、MP3、VoIP及JPEG2000等,并负责管理存储器、外围设备、外部接口等系统资源,运行应用程序,提供用户界面,外加终端的电源管理功能。

根据处理器核的分类,有用于开放性平台的核和用于实时嵌入式操作系统的核,前者拥有ARM处理器性能和特征集,MMU 虚拟存储器和复杂的存储保护特性,可广泛用于Windows CE、Linux、Palm OS和Symbian平台。后者通常运行实时操作系统满足特定的应用处理器市场需求。

根据参考设计方案的分类,可分为开放式和封闭式平台两种,开放式平台有Symbian、Windows Mobile、Linux、iPhone、Android、BlackBerry、J2ME、BREW等,支持手机应用程序通过OTA下载和安装;封闭式平台有MTK、展讯、TI、飞利浦等。

1.1.3终端业务概述

目前我国的移动用户数已接近3亿,运营商积极开拓移动数据业务的运营模式,打造了“移动梦网”、“联通在线”等业务品牌,与ICP、设备制造商建立了良好的合作模式,但在业务模式、销售策略等方面仍然存在一些问题。其中,移动数据业务标准的不完善性是制约业务发展的一个重要因素。产业界一致希望通过运营商、设备制造商、移动终端商、ICP、科研单位等的共同努力,形成面向市场、科学有效的技术规范,促进移动通信市场的发展。几个影响因素列举如下:

●终端性价比影响业务推广;

●终端可用、易用性影响业务推广;

●用户需求的差异影响业务个性化定制;

●终端漫游、2G和3G互联互通影响业务平滑过渡。

移动终端业务将实现从基本话音、消息服务向Internet浏览、视频电话及聚合业务方向转变,新业务和新应用的开发推广与终端业务规范的发展之间的关系越来越密切。同时,终端的功能、款式和性价比也影响着用户的消费行为。

1.业务规范及3G业务的相关组织

综上所述几点影响因素,很多移动业务已不再局限于系统设备厂商、品牌手机厂商、内容提供商及运营商局部业务应用,不再局限于业务标准不完备和不统一的问题。目前制定移动业务相关技术规范的论坛和组织包括3GPP、3GPP2、OMA等,所制定的技术规范种类和版本较多,加上很多厂商自行推广的标准,以致目前还没有形成完备的、业界普遍公认的标准。

对于业务规范和标准框架结构,业界尚处于研究探讨之中,没有形成共识,其主要原因为:

●业务规范标准由业务和应用驱动,而不是由技术驱动。根据运营商提供的业务特征不同,需要调用不同的业务引擎;

●对市场需求考虑不周全。市场对于业务规范的接受程度和反应是极为重要。往往制定了大量的标准,而真正能够应用到实际业务中的却并不多;

●缺乏统一的互操作性计划和实施。一些被市场接受的标准,其设备在市场准入前,缺乏统一的互操作性计划,也没有专门的部门对此进行测试和检验,给运营商的业务实施造成很大困难;

●移动业务和应用标准的更新速度快,新技术和新产品层出不穷。厂家往往以尝试打开市场为先导,在获得一定市场份额后,产品即成为了事实标准草案,故与传统的标准制定有很大的区别;

●运营商寻求差异化,与业界整体互通性差。

(1)3GPP/3GPP2(3rd Generation Partnership project)技术规范机构

3GPP TS22.101指出,从承载网络方面,可分为电路域业务和分组域业务。图1.2显示了3GPP的业务分类,电路域业务分为基本业务和补充业务,基本业务又分为电信业务和承载业务;分组域业务包括IP承载业务,即IP多媒体业务和非语音类增值业务。IP多媒体业务是与IP电话相关的各种业务,基于GPRS承载的语音、聊天、白板等业务;非语音增值业务是指与呼叫无关的增值业务,如电子邮件、彩信、网页浏览、新闻等;SMS、UUS、USSD是承载业务,如利用SMS承载用户位置信息等。运营商也可以用3GPP定义的工具箱(如CAMEL或LCS)或外部解决方案来创建或修改上述业务,如预付费业务就是采用CAMEL工具生成的一个典型例子。

图1.2 3GPP的业务分类

IP承载业务有:

●IP多媒体业务(SIP Telephony,Chat,WhiteBord,etc…);

●非话音增值业务(E-mail、MMS、WWW、News,etc…)。

其他类型承载业务(SMS、UUS、USSD)有:

●电路承载业务参考3GPP TS 22.002;补充业务参考3GPP TS 22.004;电路域电信业务参考3GPP TS 22.003(Telephony,Fax,SMS);

●工具箱(CAMEL,MExE,USAT,OSA,J2ME/BREW,WAP,OISP,LCS,Internet Tools,etc…),其中MExE利用移动终端和SIM卡的资源,在执行过程中,MExE协议独立于具体承载,可以采用SMS或其他承载网络的数据业务。因MExE允许编程,故需要有严格的安全措施以防止未鉴权的用户。其中SIM卡应用工具箱与第三代UTK技术基本相同,一旦引入SAT功能,终端可以直接利用其生成的菜单和短消息方式与网络服务器进行通信,SAT与移动终端的接口支持预激活功能,即SIM卡通过移动终端发送主动激活,要求移动终端进行特定操作。3GPP2于2002年也为CDMA的UIM卡制定了CAT标准。

(2)OMA(Open Mobile Architecture)标准化组织

█ 移动多媒体广播业务的应用层能力规范

OMA看好移动多媒体广播业务的应用前景,如可以发展手机电视。OMA认为DVB-H, 3GPP的MBMS,3GPP2的BCMCS等无线数据广播技术是移动广播业务的底层网络基础,移动多媒体广播业务是需要结合多种技术包括DRM技术在内的总体式业务。在内容保护、设备管理、通知和文件传输等方面进行了详细定义,对承载网络独立的移动多媒体广播业务的相关技术进行详细的规范定义。

① 音视频编解码技术:将可能和3GPP,3GPP2 保持兼容和一致,如视频可采用H.264/AVC,音频可采用AAC+和AMR-WB+等。

② 业务导航技术:将采用对用户友好的数据模型和数据管理,从而支持合适的使用场景、移动性与蜂窝网络的兼容,业务指南称将能在传输层使用FLUTE和HTTP,使用SRTP进行文件压缩。

③ 内容保护技术:将可使用OMA DRM 来进行内容保护,也可能基于智能卡(USIM/R-UIM)方式。

④ 业务鉴权、计费实现方式:将可使用OMA DRM实现业务鉴权,使用移动网络现有的计费系统。

█ 数字版权管理

3GPP制定了DRM需求规范,而架构、功能规范、IOP测试方法等则由OMA完成。OMA DRM目前已经产生了三个版本:

① OMA DRM 1.0正式批准发布,基本能够满足Forward-Lock方式的商用需求;

② OMA DRM 2.0也已经正式批准发布。增强支持Combined Delivery,Separate Delivery等方式和流媒体业务,满足规模商用的需求;

③ OMA DRM 2.1。主要在2.0版本的基础上进行增强。

OMA DRM 2.0规范主要包括版权表达语言、内容封装格式、版权对象获取协议、在线证书状态协议及下载业务方面的规范。

OMA DRM是一种与终端相关的方案,需要终端配合,此外还有数字水印、KJava Wrapper等与终端无关的DRM方案,可以作为OMA DRM方案很好的补充。

█消息类业务能力

Messaging工作组负责消息类业务相关的技术规范,包括互操作的要求,它的目标主要是定义消息类业务能力基本的消息特性,并提供 Messaging 业务能力实体和其他不同的移动应用之间交互方法。

目前MWG有三个正式的子工作组。

① MWG MMSG:即多媒体消息子工作组,主要是继承原来在3GPP、3GPP2中MMS方面的工作,其首要目标是通过为MMS客户端架构制定规范来满足3GPP已经定义的MMS规范接口和参考点。继续和其他的MMS 相关组织进行研究,特别是3GPP2,使得 MMS可以实现不同运营商的不同网络之间的互操作。在3GPP将MMS的工作移交至OMA之后, 3GPP2也已经将MMS方面的工作移交至OMA。

② IM SWG:即时消息子工作组,包括两个方面。一方面对原来基于Wireless Village的IMPS中即时消息部分进行维护和更新,另一方面制定基于SIMPLE的即时消息规范。

③ MEM SWG:Mobile E-mail,移动邮件子工作组。移动邮件也就是通常所说的Black Berry或者Push E-mail等,目前已经开始了技术规范的制定。

此外,MWG新近确立了CPM(Converged IP Messaging)项目,主要研究消息类业务融合的规范,也是一个非常值得关注的规范项目。

MWG还有一个非正式的子工作组:消息业务互操作(Messaging Services Interworking),主要致力于解决消息类业务互连互通方面出现的问题,例如制定Wireless Village IMPS与SIMPLE IM之间的互通规范。

█定位服务

OMA的LOC工作组专门制定互连互通的定位业务标准,制定移动位置业务的规范,确保端到端的互操作,在漫游、Le接口等研究领域逐步取代3GPP和3GPP2,成为Location业务标准的主要国际规范制定者。

目前LOC工作组的内容主要有以下几个部分:

MLS(Mobile Location Service):主要是继承原LIF论坛MLP(Mobile Location Protocol)协议的制定和维护工作,同时包含后来立项的RLP(Roaming Location Protocol),PCP (Privacy Checking Protocol)等协议,也就是在3GPP R6定义的架构中Le接口、Lr接口和私密性检查的协议。

SUPL方面,目前已经有两个版本。SUPL1已经完成,正在进行IOP测试,预计将在近期成为批准发布的业务能力规范。SUPL2早在2007年3月完成候选规范,其研发已经完成,目前主要是广告和测试方面的工作。

█ DM和DS

DM和DS最初作为一个工作组(DSDM)在OMA开展工作,后来由于在DM方面不断出现新的内容,OMA将这个领域的工作分为以下两个工作组:

Device Management(DM)组:主要提供对分布、移动设备管理的机制,从而优化用户的经验数据,并减少运营商的成本。内容包括设备初始配置参数的设定、设备数据的更新、从设备获得管理数据、处理设备产生的时间和告警等。

Data Synchronization(DS)组:继续原SyncML组织在数据同步规范方面的工作,同时制定一些新的相关规范,包括一致性规范,以及如何在OMA 体系结构下使用数据同步技术规范的说明等。

█ 移动电子商务和计费工作组

目的是为OMA的其他能力制定统一的计费接口,确保 OMA中尽可能多的能力能支持移动电子商务的开发和实施,为OMA 其他工作组及外部标准组织提供需求分析支持,为OMA其他工作组提供移动电子商务和计费方面的技术支持。

█ 业务安全

SEC(Security)工作组主要负责终端与业务服务器之间的安全通信协议,包括传输层面和业务层面,以及与一些保密性相关的实体之间的交互协议。为移动用户提供安全相关的服务。

█ 互操作规范和测试

IOP 工作组负责与互操作相关的规范制定和测试组织工作。其主要职能是确保业务端到端的互操作性,保证业务链中每个元素的互操作能力,这种能力要符合预先规范定义的准则,包括业务和应用互操作测试流程、测试的组织形式、测试方法的制定流程等。

图1.3 业务应用接口

为了简化业务应用层的架构模型,OMA首先对各种应用接口进行了分类。如图1.3所示,OMA在OSE中定义了四类接口:

① IO:Enabler的内在功能接口类,由OMA进行定义。若没有Policy部分,该接口直接提供给Application和其他Enabler,便于不同Enabler之间的功能重用;

② IO+P:应用了Policy的IO接口,提供给Application和其他Enabler。其中,P是IO接口上的一个附加参数集,部分P参数的语法和语义在OMA中进行定义;

③ I1:Enabler资源与Service Provider Execution Environment之间的接口,例如软件生命周期管理。它在OMA中进行规范,作为OSPE的一个部分;

④ I2:Enabler实体调用底层资源功能的接口类,例如IMS提供给应用层的开放接口。这一类接口不在OMA中进行规范。

OMA由工作组组成,组织结构图如图1.4所示。

图1.4 OMA组织结构图

(3)IETF

IETF(互联网工程任务组,成立于1985年底,http://www.ietf.org)负责互联网基础协议标准化,任何非IETF成员都可以参与IETF标准化。IETF体系结构分为三类,一个是互联网架构委员会(IAB),第二个是互联网工程指导委员会(IESG),第三个是在八个领域里面的工作组(Working Group)。标准制定工作具体由工作组承担,工作组又根据主题的不同划分到若干个领域,如路由、传输和网络安全等,包括如下的八个研究领域,133个处于活动状态的工作组:

●应用研究领域,含20个工作组;

●通用研究领域,含5个工作组;

●网际互联研究领域,含21个工作组;

●操作与管理研究领域,含24个工作组;

●路由研究领域,含14个工作组;

●安全研究领域,含21个工作组;

●传输研究领域,含1个工作组;

●临时研究领域,含27个工作组。

标准化协议包括互联网协议IPv4/6、传输控制协议TCP、用户数据报协议UDP和超文本传输协议HTTP等。

在业务引擎层面,IETF扮演的角色是互联网相关协议的标准化论坛,与W3C及其他论坛一同对网络服务相关协议进行标准化,用于纯基于IP的系统或用作标准化体系结构(如3GPP和3GPP2系统)中的构件。

同时,对很多管理接口也进行了标准化,如简单网络管理协议 SNMP、轻量级目录访问协议 LDAP、公用开放政策业务 COPS、管理信息库 MIB。还有一个工作组负责基于政策的管理,以产生政策核心信息模型和QoS信息模型的RFC。

IETF由过去关注信息模型,转变为现在主要关注业务协议的标准化。进而,它和OMA一起将提出能够影响3GPP架构设计的一致性意见。

(4)W3C

W3C(万维网联盟,于1994年10月在麻省理工学院计算机科学实验室成立, http://www.w3c.org)是对网络标准制定的一个非营利组织,如HTML、XHTML、CSS、XML的标准就是由W3C定制的。

W3C以开发“Web事实标准”的各种技术规范作为其核心任务,目前已开发了50多个技术规范。这些技术规范中大部分是由各个功能组开发的各种功能性规范,同时也包括WWW的核心体系结构。W3C的这些成果基本上已由企业和研究机构进行了实现。

基于W3C的组织原则和工作宗旨,以及Web的实际应用情况,W3C提出了其长远目标,包括3个方面的内容,分别是:

●建立一个普遍的、全社会易于使用的公共网络环境;

●Web上的语义可管理和正确使用;

●Web应该是安全可信的。

W3C制定的核心Web业务规范包括:

●核心标准:XML、XML schema、DOM;

●Web业务:架构注释、SOAP、WSDL;

●XML安全:XML标签、XML加密、XML规范化和XML密钥管理;

●基础设施:RDF、OWL。

2.3G业务分类

根据QoS分类,3GPP将业务划分为会话类、流媒体类、交互类和后台类四种业务类型。会话类和流媒体类业务对时延敏感,但允许较高误码率,而交互类和后台类业务对时延要求低,但对误码率要求高。会话类业务主要为语音通信和视频电话业务;流媒体类业务根据不同业务特性,分为长流媒体和短流媒体业务、群组流媒体和个人流媒体业务、广播式流媒体和交互式流媒体业务;交互类业务包括基于定位的业务、网络游戏等;后台类业务有E-mail、SMS、MMS和下载等,如图1.5所示。

图1.5 用户中心性能需求

语音通信始终是3G的基本业务,但数据业务是3G业务区别于传统话音业务的重要特征,3G数据业务重点是个人交互式流媒体业务、交互类和后台类业务,均具有面向个人需求的个性化特征。

3G 业务将提供实时在线的数据环境,可以在任何时间、地点连接到多媒体内容服务,UMTS论坛将3G业务分为六类:移动Internet接入、移动Internet/Extranet接入、定制娱乐信息、多媒体信息、基于位置业务和高级话音业务。UMTS业务的分类建议如图1.6所示。

图1.6 UMTS业务分类建议

█ 按照媒体形式划分,如表1.1所示。

表1.1 按照媒体形式划分

█ 按照业务性质划分,如表1.2所示。

表1.2 按照业务性质划分

续表

█ 按照用户需求划分,如表1.3所示。

表1.3 按照用户需求划分

1.1.4终端体系结构与协议简介

移动终端集成了复杂的通信协议栈,具有跟其他设备互连互操作功能,支持丰富的多媒体应用,却必须在一个资源受限的嵌入式系统下实现。L1、L2、L3层协议栈、低层驱动程序和MMI及应用程序构成终端软件的三大部分。同时架构终端软件通常分三层,第一层由一个DSP来执行,第二层和第三层则由ARM处理器来执行,DSP还提供自适应多速率的语音编解码器功能,第三层用于实现数据链路层之上的信号传输,并负责无线资源管理、移动性管理和呼叫控制功能。

1.终端的系统结构和主要功能

如图1.7所示的MMI结构图由内核部分,底层驱动部分,L1、L2、L3层协议部分和人机界面部分组成。对于基本终端和功能终端一般功能包括:电话簿、消息、设置、WAP、其他应用(时钟、计算器、游戏、字典等)。终端软件最重要的是它的内核部分,对外提供可供修改的外部程序及设置功能表,一般不随意改动,往往牵一发而动全身,可能因小小改动导致一系列资源的重新分配。一般参考设计平台提供给终端研发厂商,对内核和协议栈部分只提供目标代码,提供驱动程序和MMI部分源代码。

图1.7 MMI结构图

MMI完全由事件驱动,每一个状态机的运行都是在消息触发下,通过调度程序来执行任务。MMI结构的各个组成部分,由接口部分、对话部分、核心应用部分、核心功能部分和用户组成,如表1.4所示。

表1.4 MMI结构的各个组成部分

2.终端的协议及接口介绍

MMI并不是独立工作的,它要和其他模块合作来完成事件任务,各模块间关系如图1.8所示。

图1.8 MMI各模块关系图

(1)MMI接口部分

●OM,操作与维护模块向MMI提供有关系统资源、电池电量监视等方面的信息,在开关机时,由MMI向OM发出通知。

●SI,SIM卡应用部分模块完成读取SIM卡上数据的操作。

●MN,移动网络服务模块向MMI提供网络注册、语音通话、消息收发、补充业务和小区广播等功能。

●L3模块把当前射频强度反馈给MMI。

●L1模块向DSP发送音量控制等命令,传送传输bit数据流所要求的所有功能。

●Keyboard模块负责监视按键操作,PMI收到消息,发出unique码供MMI处理并显示。

●Display模块用来显示文字、符号,PMI收到消息由显示驱动程序发送消息来进行显示操作。

●Sound模块,用来发出音乐播放指令,由PMI发送消息进行操作。

●EEPROM保存整机运行数据。

(2)MMI对话部分

对话部分提供了用户与手机之间的各种对话,通过这个部分用户可以使用手机提供的各项功能来完成用户的需求。同时手机也可以从这部分得到用户指令。在参考设计方案中MMI提供了一套对话部分,但对手机软件开发者,通常不使用标准MMI提供的对话部分,开发属于自己的对话部分,即可根据自己掌握的手机使用者的需要、开发难度等开发出有特色的、有竞争力的手机软件。根据某品牌手机的软件来看,主要包括以下功能:

●提供人工输入电话号码和MMI命令的对话;

●提供激活、禁止和修改SIM卡上CHV的对话;

●提供建立通话和取消通话的对话;

●提供有关电话本各项操作的对话;

●提供输入信箱地址的对话;

●提供接收短消息的对话;

●提供发送新短消息的对话;

●提供发送已存短消息的对话;

●提供设定短消息有限期限的对话;

●提供设定短消息服务中心号码的对话;

●提供通话计时计费的对话;

●提供设定键盘锁的对话;

●提供设定开机问候语的对话;

●提供进行语言选择的对话;

●提供显示已接/未接电话的菜单的对话;

●提供设定通话计时计费格式的对话;

●提供进行网络选择的对话;

●提供显示隐藏/显示本机号码的菜单的对话;

●提供设定任意键应答开关的对话;

●提供设定按键音的对话;

●提供设定闹铃模式的对话;

●提供设定充电模式的对话;

●提供使用计算器的对话;

●提供设定来电铃声音乐和音量的对话;

●提供设定收到短消息的音乐盒音量的对话;

●提供锁SIM卡的对话;

●提供通话计时器的对话;

●提供设定闹铃时间的对话。

(3)MMI核心应用部分

核心应用部分用于执行对话部分的功能,供很多应用程序可在不同的对话中使用。一旦手机从对话部分搜集到信息,就可以完成用户指定的功能。包括菜单管理器、行编辑器、文字信息库、语言管理器、输入电话号码、输入短消息和SIM卡的CHV处理。

菜单管理器用来对菜单结构进行操作。一个菜单结构是函数n维的树。

行编辑器负责实现用户输入数字和字符数据的功能。在GSM03.38中详细介绍了行编辑器是怎样产生字符码、怎样用数字键来输入文本的。

所有提示信息和菜单标题样的固定文字信息是存储在文字信息库中的,每种文字信息有一个唯一ID,且按照手机所支持的语言单独被存储。文字的类型是用来指出文字数据是按照默认字母还是Unicode码来解释的,当前的语言则由语言管理器得到。因为每种语言的文字信息结构不同,所以不管文字信息是被一行显示还是多行显示的,它都是作为一个字符串被保存的。语言管理器是在用户选择了自动选择语言或其他支持的语言时用来维护和管理当前显示的语言的。

(4)MMI核心功能部分

该部分MMI的功能是独立于硬件和用户的,是由其他GSM模块提供的服务,包括启动MMI、网络选择、电话本、处理MSISDN号码、处理上次拨号部分、处理短消息部分、处理补充业务部分等。