1.2终端软件现状与趋势
1.2.1 3G时代的机遇与挑战
相对于2.5G 移动通信,3G 移动通信的标志是宽带数据通信。3G 移动通信标准TD-SCDMA与WCDMA的数据带宽能达到384kb/s,并逐步过渡到2Mb/s或更高的通信速率,基本可以与现在已经普及的家庭计算机宽带网ADSL相媲美。随着3G时代的到来,人们会明显感觉到以下两点:
●数据通信的带宽快速增长;
●新闻、多媒体、游戏的下载将随着带宽增长而增长。
计算机宽带网的流行,在很大程度上受益于浏览器技术的发明。宽带网技术属于硬件的范畴,而浏览器则是一种互联网软件运行的平台。浏览器技术极大地推动了互联网的发展,如果没有众多计算机用户对互联网服务的需求,宽带网本身很难发展,更不要说给社会带来经济效益了。过去十多年来,宽带网与浏览器的发展相互依赖,缺一不可。
传统的互联网软件必须在计算机上运行。计算机通过安装不同的软件可以完成不同的工作。计算机的维护对大多数消费者来说非常复杂。3G移动通信增值业务运行平台跟传统的计算机互联网软件运行平台有着本质的区别:消费类电子产品的特点是没有安装软件的概念。
总之,用户无须自行安装软件的智能电子产品都可以称为嵌入式系统。其实,智能电子产品也就是用于某种特殊用途的专用计算机。嵌入式系统的特点是目的明确,使用简单。目前,嵌入式系统已广泛应用于消费类电子产品、工业控制、航空航天、医疗电子、国防应用等领域。
具体举几个例子:WiFi无线路由器是一种常见的嵌入式设备,里面一般都安装了Linux之类的操作系统。路由器的用途非常明确,用户只需按照说明配置一下即可使用。同样是安装了Linux操作系统的PDA则不然,用户不但能使用其预装的软件功能,还可以自行安装软件来扩展PDA的用途。严格来说,PDA是掌上电脑,也就是掌上计算机,而不属于嵌入式设备。
未来的3G 智能手机、数字电视和汽车电子到底应该更类似计算机,还是更类似嵌入式系统呢?消费者是否需要安装、卸载、管理软件就成了“试金石”。如何让用户感觉不到软件安装,而把3G智能手机变成万能的“瑞士军刀”就是我们面临3G时代的挑战。
我们大致可以把未来的嵌入式系统分为两类:传统的专用设备类嵌入式系统和网络增值业务类嵌入式系统。相对来讲,网络增值业务类嵌入式系统是网络时代的一个新生事物。移动通信技术的进步,需要通过增值业务来展现给消费者。手机数据传输的带宽越宽,移动增值业务发展就越快。智能手机是移动信息终端,是各种增值业务的载体平台。如何兼容已经提供的业务?如何发展正在提供的业务?如何策划丰富多彩的未来业务?新一代嵌入式增值业务类嵌入式操作系统的软件技术架构必须能支持不同生产厂家的业务、不同版本的业务、以及不同类型的业务。
互联网曾经给PC软件产业带来革命性的变化。3G时代即将来临,作为未来通信产业基础设施的一个重要组成部分,移动信息终端上的增值业务运行平台正面临巨大的变革。
所以,移动通信服务的发展趋势是无线增值业务将逐步取代语音通信业务,成为移动运营商的核心服务和手机用户的核心需求,如图1.9所示。
图1.9 移动通信服务的发展趋势
1.2.2 3G手机终端的发展趋势
一般消费者可以将3G简单理解为无线移动宽带网。目前的手机或者智能手机的基本功能是通话和短信。智能手机跟一般手机的区别是智能手机安装了所谓“开放式操作系统”,也就是消费者可以自己为智能手机安装软件。可以想像,无线移动宽带网是推进手机业务更快发展的前提条件,必将促进开放式操作系统发展迅猛。随着智能手机自动化程度越来越高,功能越来越强,开放式操作系统必须具备完善的多进程管理和强大的内存管理能力;必须为开发增值业务的程序员提供非常方便的软件开发环境;为消费者搭建非常好用、易用的增值业务使用平台。目前开放式操作系统在国内手机市场已经有将近10%的占有率,以后这个比例还会逐步增加。
手机操作系统在3G时代将面临如下的机遇与挑战。
1.统一的增值业务平台
目前市场上缺乏统一的智能手机操作系统 API,导致不同手机终端之间的业务适配能力不高,使用不方便。第三方移动增值业务需要针对不同系统,重复多次开发,必将影响业务快速推广与普及。虽说Symbian、WinCE、Linux等已经占领2.5G智能手机市场的大部分份额,但是它们离3G市场要求的XML、URL、构件化三原则都还有一定的距离。
用不断增加原有操作系统API数量的办法来适应业务的不断发展,而直接从各自现有技术演变到3G时代的可能性几乎为零。因3G业务多得如同天上的星星,Symbian、WinCE、Linux等也都必须通过中间件软件平台重新定义一组面向构件的API集合(参见JAVA、.NET的API文档),是通过专用构件,而不是扩展API来适应3G业务发展的需要。这时,它们原有的宿主操作系统API的地位势必减弱。
时代的变革创造机会。移动运营商与合作伙伴共同开发统一的终端软件操作系统 API及中间件,有利于进一步提升终端对各类业务适配能力,也有利于第三方软件应用开发,并且便于更好地支持业务推广、为用户提供更好的服务。在整合各类业务需求的基础上,制定智能手机终端的API,符合产业链多方利益,并且确保第三方业务模块的可扩展性。
2.改善用户业务体验
设计智能手机的UI(用户界面)时,首先要深入研究用户需求,改善用户对业务的使用体验,降低用户使用业务的门槛。由于每一款智能手机的制造厂家对UI设计的理念不一致,消费更者换一部手机就要重新学一遍;这对中老年人比较困难,对年轻人也很麻烦。消费者更换手机之后,如何能继续保留自己对某项增值业务使用习惯?另一方面,中老年人需要键盘显示的字符大一些,年轻人希望用户界面炫一些。而现在同一厂家的每款手机,千“人”一面,原因就是手机使用的操作系统没有给厂家细分市场的机会。
Smalltalk-80在1980年就提出了所谓MVC架构。MVC是Model-View-Controller(模型-视图-控制器)的缩写,分别代表程序逻辑、图形界面、异步事件控制等编程三要素。其基本思想就是要提高软件架构的灵活性和复用性。虽然研发了20多年,但是由于通常使用同一种语言来描述三件既相关又独立的事情,而且软件模块嵌套软件模块,很难有好的结果。而新一代操作系统利用JavaScript等脚本语言描述Model,用XML描述View,用DLL 来实现 Controller,三种语言各司其职,分工明确,概念清晰。软件分割好之后,仍然可以使用C/C++来描述Model或者View,也可以用JAVA 来实现DLL,因此发展前途很大。
众所周知,WORD文本编辑器可以在Windows 95、Windows XP甚至Linux上直接运行。新一代操作系统能够把程序模块分得更细一些,利用构件化技术,让中文输入法自成体系,能通过中间件的适配,运行在不同宿主操作系统之上。大家也知道Windows XP可以让媒体播放器“换肤”。新一代操作系统应该能够利用XML 来完成所谓的“换肤”技术,像写网页那样简单地把按钮之类的控件动态变大、变小。如果我们还能通过全球唯一地址(URL),像搜索网页那样,从网上找到自己喜欢的“皮肤”、输入法,然后选择把它们永久驻留在本地。那么,3G时代的手机用户体验就会有所改善。
3.通信技术多模化
一款移动终端可以同时集成多种无线通信技术,包括 GSM、GPRS、WCDMA、TD-SCDMA、WiFi、WiMax技术等。这些技术都可以支持语音业务,也支持各种移动数据业务和多媒体业务。不远的将来,移动终端还会集成手机电视技术,让各种业务在不同制式上平滑切换,使得我们的用户有一个良好的体验。
传统计算机的存储体系结构是由寄存器、内存、硬盘等组成的,前者是后者的缓存(cache),它们之间由北桥、IDE等加以连接,如图1.10所示。传统计算机编程与不同存储体系结构间的连接技术是无关的。目前,随着网络传输速度的提高,传统的冯·诺伊曼计算机体系结构已经从分立计算机演变为网络计算机,网络计算机的硬盘只是互联网上存储信息的缓存;可以设想,TCP/IP等属于连接硬盘与互联网的技术,应该与网络时代的编程模型是无关的。
除了通信协议跟软件模型无关之外,另外一个必须解决的问题是“多模”问题。多模问题不仅限于通信协议,多种IO端口,多个存储标准等也都属于多模问题。成熟的解决方案涉及“泛型编程”(Generic-Programming)理论。用程序员的语言来说,就是支持关于“类对象”(Class-Object)进行编程,重载创建构件的New()操作。创建网络构件的时候,动态检查当前什么通讯协议信号最强,然后采用GSM、WiFi、TD-SCDMA等构件之一作为网络构件。
图1.10网络计算机的冯·诺伊曼层次化存储模型
4.开放硬件连接技术及相关接口
为了有利于移动终端与PC、照相机等电子设备进行信息共享,智能手机制造商必须规划和统一终端的硬件连接技术和接口,并推动开发符合标准的产品。数码照相机的SD卡与智能手机上的SD卡是一样的,接口也一样。在数码照相机照完相之后,把满的SD卡拔下来,换一个空的SD卡再用。现在用手机来照相,手机的SD卡兼容性还不够好,但目前智能手机终端的内存、Flash和可以插拔的SD卡存储量都有了很大提升。而多种成熟的存储制式并存,给不同手机终端数据文件交换、SD卡即插即用等方面带来困难。
为了进一步推动智能手机终端各种制式的存储卡、外设的标准化,目前的解决办法大概有三种,而且三种方式经常要一起使用:
●国内行业协会,国际标准化委员会,出面协调各方利益;
●更多地采用“泛型编程”等软件技术手段,减少对标准的依赖;
●标准协议代码共享,按照操作语义学的定义来明确各类本地硬件连接技术相关的要求,避免中文、英文等文本标准的歧义性。
5.移动业务多样化
今后智能手机将成为娱乐中心。随着各种多媒体处理能力、计算能力及存储能力都在不断提升,智能手机会内置无线音乐、手机电视、本地或联网游戏、聊天和博客,以满足用户娱乐需要。为了进一步保证用户业务体验的一致性,以及推动移动终端的媒体化,移动业务产业链的相关企业应该合作开发符合规范的媒体播放器,规范多媒体格式和运行脚本,并对媒体终端播放器和浏览器进行相关的规范符合性测试,保证最终产品性能和功能符合相关规范。
智能手机将成为非常强大的资讯中心。3G移动通讯进入宽带时代,移动终端浏览器的交互能力日益增强,手机互联网和PC 互联网的信息共享是一个非常大的趋势。而各个不同厂家缺乏统一的浏览器,将会给维护、发布、搜索各式各样的资讯业务带来困难,也会给阅读手机杂志、动漫等带来挑战。
智能手机会成为交易中心。为了满足用户购物、交费等方面的需求,智能手机必须具备加密功能和安全功能。目前,加密芯片已经出现,各种安全协议也已经成熟,使得交易更加可信。但消费者手头上有一堆各种加密、认证卡,用起来非常不方便。智能手机应该把它们集成起来,统一管理,方便用户。
智能手机会变成移动办公中心。通过不断集成各类办公的软件,用户通过智能手机来阅览文件、安排日程、收发邮件、与PC同步信息等。目前智能手机与PC以及其他的一些电子设备的信息共享和同步目前还存在着困难,安全性有待进一步提高。
总之,由于智能手机的生产厂家不同,移动业务的开发商不同,消费者所处的地区不同,他们的年龄、爱好、消费能力的不同,导致大家对业务的接受程度不同,对业务认可的标准不同。众多的产品、业务、标准、细分的客户群体给电讯运营商带来推广业务的困难。
让我们以国产音视频AVS标准推广为例说明遵循标准带来的好处。消费者可以自己通过XML网页下载一首用AVS编码的歌曲,或者得到朋友通过彩信送给她一个XML网页,描述了这个流行的AVS编码的歌曲。但是她从前没有用手机听过AVS编码的歌曲,所以她的智能手机上没有安装AVS解码器。令她没有想到的是,她得到的AVS压缩包里已经包含了一个AVS解码器的URL地址。根据这个URL地址,新一代的软件平台可以通过检索,得知这个AVS解码器是否已经事先下载到本地,或者自动帮助用户透明下载这个AVS解码器到本地。对消费者来讲,她体验的只是音乐开始播放的时间略有差别,而不会感觉到解码器软件的安装与否。
我们很容易理解,其他业务交易、身份认证、二维条码、游戏引擎等解码器也都可以使用类似AVS压缩包的办法来透明完成。不同厂家由于对AVS标准理解的差异,解码器可能会存在各式各样的BUG。但如果一首AVS歌曲使用同一厂家的压缩包,然后再使用同一厂家的解压缩包,消费者可能仍旧感觉不到这首AVS歌曲的编码格式存在问题。
各种文件格式标准是推广其应用的重要环节。但是要在不同地区、不同语言、不同种族、不同国家、直至全世界范围内推广一个标准的难度是不言而喻的。
为了推广多如牛毛的业务,统一软件运行平台,然后采用“解铃还需系铃人”的策略,动态透明下载业务处理软件。这可能不失为一个可行的方案。这也就是JAVA、.NET、Elastos、Android共同的设计理念。
对于目前市场上比较流行的Symbian、Palm、Window Mobile以及嵌入式Linux操作系统,多本书已经进行了详细介绍,本书介绍的重点在新一代的网络操作系统及开放的应用软件开发平台,因此将以Elastos系统为主来介绍。