Intel的“移动”野心——MeeGo系统深度解析

技术空间

尽管Intel在很久之前就曾经开发出Moblin这个基于Linux的系统,但不可否认的是,这个系统并没有让Intel在商用领域中得到太多的发展,特别是在移动设备上,Intel虽然也推出了Atom系列处理器和ARM处理器架构一争高下,但在操作系统上却始终受限于其他公司,比如微软。这显然不是Intel所期望的,在今年的巴塞罗那移动大会上,Intel为大家展示了一款名为“MeeGo”的操作系统;而就在刚结束的ComputeX2010台北电脑展上,多款搭载Intel Atom处理器以及MeeGo操作系统的移动设备也在Intel的支持下纷纷露面……MeeGo是怎样的一个系统?它和Intel又有什么联系?下面就让我们一起来走近MeeGo,揭开这个神秘操作系统的面纱。

MeeGo——两大公司合作的产物

说MeeGo是Intel一家的产物是不准确的。这个基于Linux的操作系统实际上是由两大IT巨子合作而诞生的,除了Intel以外,还有诺基亚参与其中。事实上,MeeGo这个操作系统本身就是由Intel的 Moblin 与诺基亚的 Maemo这两个操作系统合并而成,并交由 Linux 基金会管理。

MeeGo的诞生简单来说,就是Intel和诺基亚要合力专注于一个共同的移动设备平台,从苹果、谷歌等厂商手中抢得一些移动市场的份额。 事实上,两家公司在移动市场的发展都不算顺利,Intel的Moblin 和诺基亚的 Maemo这两个操作系统都是主打移动设备市场的,但这两个系统在市场上的认知度并不高,特别是无法受到手机厂商的支持,这使得两大失意者有了一个共同的目标。而在技术上,两个操作系统都是基于Linux,同时发展的方向也类似:都是致力于提供杰出丰富的消费者互联网体验。正是基于以上种种,这才使得两家公司有机会联手起来。2009年6月,两家公司声明了彼此的战略合作关系。双方宣布结成长期合作伙伴,研发下一代基于Intel架构的无线计算设备和芯片组架构,以及 Linux 项目的合作。而这个项目也就是现在我们所看到的MeeGo。

或许有人会觉得意外,诺基亚不是传统的手机市场老大么?Intel自己的处理器也卖得红火,上网本势头也不错,有必要联手起来打造一个专门为移动设备服务的操作系统么?事实上,诺基亚的塞班系统在苹果iPhone OS和Android的冲击下,早已不复当年之勇,手机市场的份额也在逐渐下滑;而Intel在移动市场和ARM的竞争,虽然有Atom处理器在手,但是并没有一个太合适的平台来专为Atom处理器服务。两家公司在移动领域的弱势地位和本身在IT圈内的身份大不相同,考虑到未来移动设备在人们生活中所占有的地位以及带来的利益,如果两家公司依然各自发展,很难在现有格局上重新崛起,所以联手未必不是一条出路。

23-d15-1-2.jpg
Intel和诺基亚强强联手
23-d15-1-5.jpg
微星采用MeeGo系统的上网本U160

MeeGo软件架构剖析

众所周知,目前移动设备的主流系统自然是谷歌的Andriod,MeeGo的出现实际上就是为了打破Android的一家独大。从底层架构来说,MeeGo和Android都采用了Linux,但是除了这点以外,MeeGo相比起Android来,可以说是大不相同,下面我们就来介绍一下MeeGo的设计架构和体系。

系统支撑层

在系统(OS)支撑层中包含了Linux内核与硬件适应工具、服务所需的核心,以适应MeeGo支持各种硬件架构。其中包括操作系统内核、驱动程序、核心架构补丁、内核配置、软件补丁和配置等。因为MeeGo是Moblin和Meamo的综合产物,所以目前有些组件还在进一步的梳理中,但是总体框架已经成型。

在系统支撑层中,MeeGo与Android采用相同的做法,利用硬件适应工具将驱动程序抽象化,借以摆脱Linux原生驱动程序必须开源的问题,让硬件开发商能够在维护商业机密且不违反Linux 规则的前提下,进行MeeGo驱动的开发。MeeGo的核心即是Linux 核心的分支,这部分自然是会针对下层的硬件适应工具做优化,驱动程序开发者只需发布二进制的驱动,并发布所需MeeGo核心架构的补丁,即可完成驱动。

中间件层

在这一部分,主要是提供建立本机应用程序和Web应用程序运行的硬件和使用方式的独立API,也就是平台的引擎和业务能力。实际上,MeeGo的中间件层已经提供了一系列平台基本服务(如通讯、互联网、视觉服务、多媒体服务、数据管理、设备服务、个人信息管理服务等)以及应用开发工具。

在软件开发架构上,MeeGo与Android或Windows Phone不同的是,MeeGo开发的是原生的本机应用程序,也就是能够直接呼叫Linux 内核并得到相应的应用程序。与Android或Windows Phone不同的地方在于,MeeGo的这种软件开发方式会直接被编译成为和硬件相关的汇编代码后,再转为系统代码执行,效能很高;而类似Android这样的开发环境,则需要开发者先转为中介语言后,再执将中介语言转换汇编代码或者系统代码来执行。当然,这其中不同的软件开发厂商有很多不同的做法,例如Android会进行预先编译的动作提高效能等。但整体来说,Android的软件开发方式在效能上还是偏低一些,只不过这样做软件可移植性很高,只需要重新编译一次,就能够在各个不同的硬件平台上使用。而MeeGo却必须根据不同的硬件平台做编译,但是在MeeGo上开发软件,程序开发者只需要对一个底层代码进行维护,不需要针对不同的硬件平台做程序的修改。这样的好处就是不管在什么硬件平台上,MeeGo的执行效率都不会有太大的差异。

用户体验层

在MeeGo整个架构体系中,用户体验层无疑是一个关键。在这一层中,提供多个领域参考平台的用户体验,初期将包含掌上电脑、笔记本电脑,后续将支持更多互联网终端平台,比如平板电脑,甚至是类似家电的网络终端设备。

MeeGo使用的是诺基亚的Qt(诺基亚的跨平台应用程序及插件开发框架)作为插件资料库,并且搭配各种内建的服务、API与特制版本的Linux 资料库,让各种Linux 原生应用程序,能够很轻易的移植到MeeGo上。此外,由于采用的是诺基亚的Qt,所以原先Symbian S60 v5上使用Qt进行开发的软件,也能够在小幅度修改的模式下转移到MeeGo下使用。这也大大丰富了MeeGo系统的软件。在MeeGo的用户体验层中,我们可以发现MeeGo将会有手持设备与上网本两个体验层,这两个体验层相信都是事先制定好的,以适应目前整个移动设备领域的需求。当然,MeeGo也可以为不同的设备来定制系统,厂商可针对自己的需求进行修改,只需要在MeeGo的用户体验层中修改插件即可。事实上,MeeGo事先设计好上网本和手机两种用户体验层是很好理解的,毕竟MeeGo是由Moblin这个原先要设计给Netbook的系统以及Maemo这个原先要设计给手机的系统合并而来,未来的开发目标也不可能放弃这两个平台。

在软件开发上,除了可以使用传统的C、Java开发程序,MeeGo也提供给开发者利用HTML+JavaScript+CSS开发应用程序,MeeGo所使用的浏览器引擎是WebKit,与iPhone、Android、 BlackBerry相同,并且将WebKit与Qt做整合推出QtWebKit,让MeeGo的软件开发更具可移植性。

23-d15-1-3.jpg
MeeGo的架构设计图

大而全,MeeGo的优势

实际上,MeeGo所直接面对的竞争对手应该就是Android,虽然同为Linux架构,而且MeeGo属于后来者,但是从它的架构以及两家公司的合作来看,MeeGo依然具有Android,甚至是iPhone OS以及Windows Phone所不具备的优势。

首先就是硬件支持度。MeeGo不但支持ARM处理器架构,同时也支持Intel的Atom处理器,毕竟MeeGo本身拥有Moblin的基础。也就是说MeeGo系统不但可以用于移动设备,也可以用于桌面设备,算是一个兼顾了计算和通信的融合平台。Android系统虽然也可以支持桌面设备,但是其主力应用还是放在了手持移动设备上,和MeeGo这种单独为桌面电脑定制的系统还是有一定差距。

其次是拥有强大的社区化用户体验。因为有统一的中间件平台和接口,拥有诺基亚OVI(诺基亚互联网服务品牌)和AppUP社区(Intel在线商店)的联合支持,所以MeeGo更易于跨终端应用的开发,特别是软件的发布,在速度以及渠道上拥有得天独厚的优势。最后是开发工具的成熟。MeeGo主要是采用QT进行软件开发,QT已经是在Linux平台历经十几年考验的平台,它比S60更加适合MeeGo,而且通过诺基亚数年的整合优化,工具的成熟度和易用性又得到了提升,可以说QT已然成为了一个傻瓜式的应用开发工具。应用开发者的学习门槛已经一降再降。比起Android SDK,甚至是iPone的软件开发, QT应该更受开发者欢迎。

此外,相比较起谷歌而言,无论是诺基亚、Intel、微软还是苹果,它们都有一个共同的优势,就是产品的知名度。Android虽然强势,但它到底只是一个操作系统,谷歌并没有太多冠以本身品牌名字的产品,但这几个厂商在市面上的自有品牌产品都或多或少获得了用户的好评,这点对于MeeGo而言也是一个机会。

23-d15-1-4.jpg
诺基亚N900采用MeeGo系统

写在最后

MeeGo无疑将是移动设备操作系统上一股新兴的势力,同时支持X86架构以及ARM架构处理器,让它在各个硬件平台上都能得到展现,更关键的是由于软件执行效率高,它的硬件要求将相对降低了。当然,按照目前Android的发展形式来看,它受到众多厂商的支持,特别是手机厂商,要MeeGo很快追上Android也是不现实的。但是诺基亚未来的高端手机很有可能全部采用MeeGo系统,而中低端手机在塞班的支持下以低价作为噱头,也未尝不能在手机市场上占据一席之地。

当然,除了诺基亚,其他手机厂商采用MeeGo的几率相对较小,但是别忘了MeeGo还有一个Intel在后面支持,未来上网本和平板电脑也都将是MeeGo必须要占据的领域,再加上MID设备,在Intel的强行推动下,倒是有很大机会在这一片市场压住Android,毕竟现在Android在这一领域上的表现并没有它在手机上那样强势。我们可以想象,采用MeeGo系统的手机和移动设备同时出现在市场上,并可以在不同硬件上进行互动,那这种组合所产生的震撼力和效果实际上和iPhone+iPad的苹果方案如出一辙,到了那个时候,MeeGo即使不能称霸移动市场,但是也会有一席之地,而这恰恰也是Intel和诺基亚所期盼的。