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部分。