1 引言
随着移动多媒体时代的到来和3G无线通信的兴起,数字广播的普及。再加上各种新一代高级视频压缩算法的采用,手机已从简单的通话工具逐渐向智能化发展。借助其操作系统和丰富的应用软件。智能手机便成了一台微型计算机。而作为其核心的手机操作系统也成为当前讨论和研究的热点。智能手机除了具备普通手机的全部功能外,还具备了PDA(个人数码助理)的大部分功能,特别是可以建立个人信息管理系统。具备基于无线数据通信的浏览器和电子邮件功能。并且在这个开放性的平台上可以安装更多的应用程序。从而可以使智能手机的功能得到无限的扩充。判定一款手机是否为智能手机。主要看其是否是一款具有操作系统的手机。
目前在智能手机操作系统领域中还没有出现一个像微软操作系统那样能在智能手机中占据垄断地位的操作系统。仍是多种操作系统并存和竞争的局面。
目前智能手机采用的操作系统主要有:微软推出的Windows CE操作系统(OS)、以Nokia为主要发起厂商的Symbian操作系统、Palm操作系统、Linux操作系统、GoogleAndroid手机平台以及苹果的iPhONe操作系统等。
2 3G智能手机的主要特色业务
3G业务根据不同的层次可以分为若干不同的种类。按照面向用户需求的业务来划分,大致可以分为:通信类业务、信息类业务、娱乐类业务、互联网业务、移动商务以及位置服务类业务。
(1)通信类业务
3G手机的通信类业务主要表现为高质量通话功能和可视电话功能。也就是打电话的时候不仅能听到对方清晰的声音。还可以看到对方的动作和表情。通话信号的抗干扰能力高,通话质量强,极大地降低了通话掉线频率,视频通话的性能稳定。
(2)信息类业务
基于3G网络的大容量与高速度,运营商所提供的信息类业务除了包括2G时代的纯文本内容,更多的是通过多媒体的方式来实现信息内容的交互式传递。例如典型的视频应用——视频社区。可以将老同学、老同事形成一个社区,无论在天南海北,大家都可以定时会晤,通过社区的活动进行沟通和交流。
(3)娱乐类业务
3G智能手机娱乐类业务包括了基于IP的视频应用。
基于多种音、视频内容来源的应用以及基于家庭娱乐设备中无线音、视频传输需求的应用。
(4)互联网业务
3G被认为是移动通信和互联网高度融合的一个典型应用。如果是长时间,例如长达几个小时的上网。使用3G手机可能不如电脑(如手机电池容量限制),但是作为短期的、移动的上网方式,使用3G手机上网则非常方便快捷。
(5)移动商务
移动商务主要包括移动支付、移动银行、移动零售、移动票务等业务。移动支付功能指通信运营商可以通过把客户的手机号码与银行卡等支付账户进行“捆绑”。随时随地为3G手机用户提供移动支付服务。调研数据显示。用户最感兴趣的3G手机功能是“移动钱包”。比例占到了被调查用户数的46.2%。该功能使手机终端的可移动性、便携性、私人化特征得到了充分的体现。
(6)位置服务类业务
位置服务类业务主要有触发类服务、信息类服务、跟踪类服务和救援类服务,主要目标是为用户提供安全保障服务和个性化、贴身的服务。如3G手机提供的定位功能。使得用户无论走在什么地方。都可以通过手机上的电子地图。方便快捷地找到附近的医院、餐厅等。
由以上特色业务的功能可以看出,3G智能手机将逐渐变成一台微型电脑,用户可以安装各类附加应用程序。让它的功能得到无限的扩展:用户还可以根据自己的喜好来设置手机,使之成为自我个性的代表。
3智能手机操作系统比较
智能手机操作系统作为智能手机的软件平台。管理智能手机的软硬件资源,为应用软件提供各种必要的服务。手机操作系统的采用,可以使应用软件开发人员避开繁琐的硬件管理与操作编程,把主要精力放在目标应用的算法研究以及应用程序自身的构架上:同时应用智能手机操作系统提供的各种服务,可以更容易地构建出复杂的智能手机应用系统。
可以说每一种智能手机操作系统都有其自身的优点。
它们的体系结构以及所能够提供的服务也不尽相同。而智能手机本身的特殊性又对智能手机操作系统提出了许多带有共性的需求,比如实时性、开放性、安全性、硬件支持能力等。下面将从实时性、开放性、安全性、硬件支持能力等方面来对目前的主要智能手机操作系统进行分析和比较。
3.1 实时性
实时性是智能手机操作系统的一个非常重要的特性。
同时也是选择智能手机操作系统时首先需要衡量的一个重要指标。为了增强系统的实时性,智能手机操作系统通常从多个方面入手,应用多种技术以便能够达到这个目的。衡量操作系统实时性的主要指标包括任务切换时间、中断响应时间和定时器的精度。
(1)Linux
Linux在设计之初没有对实时性进行任何考虑。主要考虑的是资源共享。吞吐率最大化。但是随着Linux的快速发展,它的应用范围已经远远超出了当初的设想。Lin呱的开放性以及其对多种架构的支持使得它在嵌入式系统中得到了广泛的应用,但是许多嵌入式系统的实时性要求使得Ijnux在嵌入式领域的应用受到了一定的阻碍,因此人们要求Linux具备实时性的呼声越来越高。
在Linux 2.4和以前的版本中。内核是不可抢占的。也就是说,如果当前任务运行在内核态,即使当前有更紧急的任务需要运行。目前正在运行的任务也不能被抢占,紧急任务必须等到当前任务执行完内核态的操作返回用户态后。
或当前任务因需要等待某些条件满足而主动让出CPU时才能被考虑执行,很明显这将严重影响抢占延迟。
在Linux 2.6中。内核已经可以抢占。因而实时性得到了加强,但是内核中仍有大量的不可抢占区域,如由自旋锁(spinlock)保护的临界区以及一些显式使用preempt disable失效抢占的临界区。
在Linux2.4和以前的版本中。调度器的时间复杂度为O(n)的算法,而且在SMP(symmetrical multi-processing,对称多处理)的情况下性能较低,因为所有的CPU共享一个任务链表,任何时刻只能有一个调度器运行,因此,抢占延迟很大程度上依赖于当前系统的任务数,具有非常大的不确定性和不稳定性。
(2)Windows CE
Windows CE虽然也不是一个严格意义上的实时内核。
但却是专门为嵌入式系统设计的。它支持嵌套中断,允许更高优先级别的中断首先得到响应。而不是等待低级别的ISR(interuption service routine,中断服务程序)完成。这使得该操作系统具有嵌入式操作系统所要求的实时性,同时有更好的线程响应能力。Windows CE对高级别IST(中断服务线程)的响应时间上限的要求更加严格,在线程响应能力方面进行了改进,帮助开发人员掌握线程转换的具体时间。并通过增强的监控能力和对硬件的控制能力帮助他们创建新的嵌入式应用程序。另外。Windows CE系统有256个优先级别。可以使开发人员在控制嵌入式系统的时序安排方面有更大的灵活性。
(3)Palm OS
Palm OS是一套专门为掌上电脑开发的OS。在编写程序时。Palm OS充分考虑了掌上电脑内存相对较小的情况。
因此它只占用非常小的内存。由于基于Palm OS编写的应用程序占用的空间也非常小(通常只有几十KB)。所以,基于Palm OS的掌上电脑虽然只有几MB的RAM。却可以运行众多应用程序。并且有较好的实时性能。同时。Palm OS有着合理的内存管理,其存储器全部是可读写的快速RAM。
RAM分为两种:动态RAM和静态RAM。动态RAM类似于PC机上的RAM,它为全局变量和其他不需永久保存的数据提供临时的存储空间;静态RAM类似于PC机上的硬盘,可以永久保存应用程序和数据。
(4)Symbian
Symbian 9.0及以后版本使用了EKA2核心。EKA2全面改进了原有的任务调度算法。完全支持实时性,支持某些高带宽、高优先级的任务对系统的基本实时性要求。这些任务包括VolP网络电话、高速率的视频在线点播。EKA2的改进有:内核实时增强,多线程处理能力更好,API调用更高效快速,是一个真正意义上的32位操作系统。
(5)Google Android
C,oosle Android手机平台是采用Lint=为内核的一个完整的手机软件开发平台,有着单独的应用框架和Java虚拟机,其内核实时性可以参考Linux部分。3.2开放性
开放性是指人们可以通过自己编写软件来扩充系统的功能,实现复杂的计算,为超大型程序提供了方便的模块化编程方法,所以开放操作系统有利于其他开发者修补该操作系统的不足,使它变得更加完善和强大。
Linux遵守GPL(GNU通用公共许可证),将源代码开放。例如,Google Android的Linux操作系统是完全开放的、自由的用户界面,具有完整的原始代码。由于GoogleAndroid的智能手机平台是开放性系统,公开源代码,支持第三方软件加入。使得Google Android的智能手机能够加载很多个性化软件,比如防火墙、即时通信软件、Office阅读软件以及各种在电脑上安装的软件,手机的功能更加强大,加快了手机与电脑的融合。同时,与Windows CE、Symbian等不同,Android操作系统免费向开发人员提供,不存在任何阻碍移动产业创新的专有权障碍,这样可以为第三方厂商节省大量研发成本。
Windows CE是闭合的操作系统,其软件Windows是商业软件,它的源代码是企业的最高机密,所以不可能开放。
使用类似Visual C++的软件。第三方可以开发应用WindowsCE。Windows CE也利用类似视窗的。NET框架。但所有的使用和服务都是收费的。
Symbian同样没有开放源代码。但根据Nokia的最近公告,Symbian也将会有开放源代码的计划。Symbian基金会日前发行了它的第一个开放源码软件程序,从而迈出了将整个Symbian手机操作系统开放的第一步。
Palm OS是一套开放性的系统。开发者向用户免费提供Palm OS的开发工具。允许用户利用该工具在Palm OS基础上方便地编写、修改相关软件。
iPhone OS X是有限的SDK(软件开发工具包),保证程序员可以利用全能OS,而不必深入核心。也就是说,核心是不完全开放的。
鉴于RIM的手机处理的大都是企业电子邮件和机密信息,这使得开放其操作系统不太合适。而且会对用户的隐私保护有一定的影响。
3.3安全性
智能手机操作系统的安全问题主要集中于在接入语音及数据网络后所面临的安全威胁。例如系统是否存在能够引起安全问题的漏洞。信息存储和传送的安全性是否有保障,是否会受到病毒等恶意软件的威胁等。由于目前手机用户比计算机用户还多。而且智能手机可以提供多种数据连接方式。所以病毒对于手机系统特别是智能手机操作系统是一个非常严峻的安全威胁。笔者主要针对以上几个安全性方面对智能手机操作系统进行对比。
Symbian系统本身存在一些安全漏洞。所以目前受病毒影响最深。已经发现的针对Symbian的病毒超过了50种。
这些病毒通常感染Symbian 6.0系统。而UiQ平台极少发生感染。广为人所知的Cabir病毒是通过蓝牙连接对Symbian手机进行DoS攻击的。由于越来越多的个人信息(如电话簿、商业机密文档等)会被保存在智能手机中。为了防止恶意软件或病毒窃取这些信息或者耗费用户通信费用,Symbian 9.0及以后的版本引入了新的系统安全模型。
Symbian 9.0以前的系统中安装的某个软件的所有文件都会存储在ksystemappskxxx目录下,Symbian 9.0及以后的系统中,某个软件中的不同文件会存放在不同的目录。如可执行文件(.exe,以前是.app)被放在ksys、bin下,资源文件被放在h'esource下。每个软件的所有私有数据被放在private目录下,其他目录是供所有软件共享的目录。其中sysbin和hresource用户不能更改。可执行文件只能由安装程序复制进去。private只能由软件安全号所对应的软件访问。可执行文件引入了能力模型,取得某些能力如访问用户的电话簿、发送短信、修改手机设置等,需要让可执行文件获得Symbian公司或者诺基亚公司的数字签名。系统还具备可执行文件防纂改功能,安装经过修改的软件包。或者用读卡器修改存储卡的ksyskbin目录。会被Symbian系统发现。引入这些特性。使得系统的安全性大大提高。但是系统安全模型的引入,也导致系统出现了兼容性问题。
用于SmartPhone的Windows CE系统也已经发现了一些病毒感染的案例。病毒作者对微软平台的热衷在手机系统上得到了延续。Windows CE系统很早就被发现存在安全漏洞。典型的漏洞是允许攻击者向使用该系统的手机发送恶意代码,这一点与基于Windows的PC系统非常类似。
Palm和Linux系统在安全漏洞方面表现较好,不过这其中包含了市场份额的影响。攻击者通常更热衷于在市场份额表现出色的系统上发掘漏洞。目前在系统漏洞方面各厂商能够在较短的时间内对发现的安全漏洞进行修补。只要用户及时地更新安全补丁,就可以避免漏洞所造成的危害。
最新发布的Palm操作系统提供了安全性保护,新的安全性特性将保证敏感数据的保密性,主要提供了强大的128位的数据加密服务(该服务基于RSA Security标准的RC4加密算法)以及端对端的安全性(通过用于电子邮件、Web浏览以及在线交易的安全套接字层(secure socketlayer,SSL)服务来提供)。对于为Palm编写应用程序的开发人员来说,这些新的安全特性意味着他们有了构建强大加密术和安全性协议的基础,且该基础是由安全性专家设计的。Palm的目标是通过提供给开发人员可以“挂入”的、坚固的安全性基础来简化其平台上安全应用程序的开发。
总体来说,由于借鉴了个人电脑领域的安全经验,手机操作系统厂商在设计系统时已经对安全问题进行了充分的考虑。这些厂商在数据加密、通信协议以及访问认证方式等方面已经做出了很多安全增强,并且仍在积极地进行改进。
只要正确地利用这些功能以及一些已有的安全解决方案。
并对厂商发布的各种信息保持适当的关注,目前的智能手机用户是能够获得良好的安全环境的。
3.4对硬件的支持能力
由于智能手机硬件平台具有多样性。CPU芯片的更新又非常快速。所以要求智能手机操作系统支持常用的嵌入式CPU,如X86、ARM、MIPS、POWERPC等,并具有良好的可移植性,支持种类繁多的外部设备。
Linux支持当前流行的大部分嵌入式处理器,其中支持的32位体系架构有Alpha、ARM、Cris、X86 M68K、MIPS、PARISC、PPC、SH、Spare等;支持的64位体系架构有MIPS64、PPc64、SH64、Spare64、X86_64等。
Windows CE仅支持ARM、MIPS、X86和SuperH。
Symbian可以支持从ARM9系列到ARM11系列的所有ARM处理器。Symbian OS v9.5是业界首款可支持ARMCortex-A8处理器的智能手机操作系统。
Palm支持的处理器有Motorola DragonBall、Xscale等。
iPhone支持的处理器为ARMl 176JZF。
Black Berry支持的处理器有PXA9xx、PXA270等。
4结束语
3G智能手机操作系统发展方向势必需要满足手机语音功能之外的多媒体应用、无线上网、手机电视、手机定位等数据功能的“移动宽带”应用。它要能够处理图像、音乐、视频流等多种媒体形式。提供包括网页浏览、电话会议、电子商务等多种信息服务。同时。3G智能手机操作系统应努力做到统一平台。克服格式问题。提供更加灵活的功能,以及让使用者决定功能。以满足个性化需求。因此,未来手机市场的格局会是以无线互联网应用为主,硬件价格所占比例会不断地缩小。手机企业不再依靠手机盈利,靠的是软件和增值服务。