|
作者:孟宪宁 胡杰 青岛职业技术学院 时间:2009-10 来源:电子产品世界
3C(计算机、通信和消费电子产品)终端设备的融合是客观趋势,Linux在上网本中已经占据30%左右的市场份额,并且有积蓄增加的趋势。Moblin是Intel公司针对采用Atom处理器的上网本(Netbook)和移动互联网设备(MID)开发的客户端Linux软件平台。Moblin计划为Intel Atom处理器为核心的上网本和移动互联网设备提供了强大而廉价的操作系统,采用该平台将使移动设备的图形处理性能和电池续航能力得到大幅提升。该平台不仅能够应用到MID和Netbook上,而且还可以扩展到车载移动设备和医疗电子设备中,Moblin针对Linux核心进行了一些改进,对移动设备所需的网络联通性能进行扩展,甚至能够支持最新的3G技术。Linux发行商、MID和Notebook生产商通过和Intel的合作,分担不同的工作,创建不同的Moblin衍生版本将Moblin组件整合进各自的移动平台。Moblin框架对微软公司的Windows、谷歌公司的Android提出了挑战,为开发商提供了基于Linux平台构建移动应用开发的另一个选择。
<strong> Moblin平台技术概要</strong>
Moblin结构支持多种平台和用例模型,可广泛用于从上网本(Netbook)移动互联网设备等多种嵌入式设备,例如车载信息娱乐系统。该结构的核心部件是Moblin核心的公共层,它是用于提供一种统一方式开发这些设备硬件或用例模型的独立层。在Moblin核心以下,设有面向硬件平台的Linux内核和设备驱动。Moblin核心以上是目标设备特定的用户接口和用户交互模型。Moblin核心提供了许多开源库和应用程序服务,用于从高级功能模块快速建立特定的设备应用。Moblin系统结构如图1所示。
<ignore_js_op>
2009-10-27 08:44:22 上传
<strong>下载附件</strong> (34.4 KB)
</ignore_js_op>
Moblin 2.0核心堆栈在以下几个方面进行了改进。
●电源管理部分针对MID和Netbook便于携带且能够长时间使用的需求,做了大量的优化,使电池续航能力得到很大提高。
●为满足随时随地获取互联网服务的需求,Moblin系统针对MID、Netbook和车载移动设备所需求的网络连通性能进行了扩展,对有线、WiFi、蓝牙、WinMax等采用同一的网络联线管理。能够支持最新的3G技术,Telephony接口支持多个3G语音堆栈,集成了VoIP。
●驱动进行了更新,增加了各种移动设备所需要的驱动程序。
●应用程序框架重新设计。Moblin 2.0核心堆栈放弃了前一版本所使用的Hildon应用程序框架,主屏幕设计和应用程序图形界面设计有了更大的灵活性。可以以Flash AIR平台为基础设计用户界面,也可以直接以HTML文件作为操作系统主屏幕或者应用程序图形界面。
●采用基于Clutter的带3D物理效果的优化应用界面框架。Clutter基于OpenGL,更容易创造出绚丽的特效,并且支持与GTK进行互操作。
●Moblin 2.0提供了全套的开发工具。主要的部件有Moblin影像创建者、Linux项目生成器等。Moblin影像创建这是指可以创建MID和Netbook等多种平台上的Moblin影像的工具Mobile Image Creator(MIC),MIC能够在USB驱动器、光盘等设备中创建一个带有平台特定的、完整的目标文件系统的活动影像和安装影像;Linux项目生成器为项目生成一个模板或者示例文件,并且预置一些编译参数。
<strong> 构建Moblin影像文件</strong>
在Ubuntu或者Fedora上构建一个可以在MID、Netbook等移动平台上运行的Moblin影像文件并不复杂,使用MIC(Moblin Image Creater)工具可以创建直接从USB或者光盘上直接运行的Moblin影像文件,也可以创建可以在虚拟机运行的Moblin影像文件。
<ignore_js_op>
2009-10-27 08:44:22 上传
<strong>下载附件</strong> (11.77 KB)
</ignore_js_op>
<strong> 安装MIC</strong>
(1)执行如下命令检查运行MIC所需的git、automake、dh-make、python等工具是否已经安装:
# yum install git automake autoconf make intltool python debootstrap kvm qemu gettext-devel gettext-libs
(2)安装MIC
运行如下命令安装moblin-image-creator:
# rpm –ihv Moblin-image-creator--.fc9.noarch.rpm
<strong> 创建影像文件</strong>
以安装在/usr/share/mic2目录下的netbook-core.ks为基础来创建不同的Moblin影像文件,例如执行如下命令可从创建从USB启动的Moblin影像:
# sudo moblin-image-creator –config=netbook-core.ks –format=liveusb –cache=mycache
该命令将生成moblin-netbook-core-XX.usbimg文件,执行如下命令将生成的影像文件写入U盘:
# sudo dd if=moblin-netbook-core-XX.usbimg of=/dev/sdb
执行moblin-image-creator命令时,通过指定不同的format参数,即可生成不同格式的影像文件,例如将format参数指定为vmdk,即可生成可以在VMware虚拟机环境中运行的Moblin影像,图3即为在VMware虚拟机环境中运行的Moblin系统。
<ignore_js_op>
2009-10-27 08:44:22 上传
<strong>下载附件</strong> (6.92 KB)
</ignore_js_op>
<strong> 开发Moblin应用程序</strong>
开发Moblin应用程序的方式主要有两种,一是在Linux主机上开发Moblin应用程序,在目标机上进行验证和调试;二是在Netbook或者虚拟机环境中直接开发Moblin应用程序。这两种开发方式的优劣如表1所示。
<ignore_js_op>
2009-10-27 08:47:10 上传
<strong>下载附件</strong> (35.95 KB)
</ignore_js_op>
在Moblin 2环境中开发一个Clutter应用的基本步骤如下:
<strong> 配置标准的Linux开发环境</strong>
(1)安装gcc,g++,make,man,autoconf,automake等Linux开发工具:
$ sudo yum install gcc-c++ make man autoconf auto,ake libtool git gtk-doc gettext emacs。
(2)安装Clutter库
* 检查可以使用的Clutter包:$ yum search clutter。
* 安装Clutter库和文档:$ sudo yum install clutter-devel。
(3)安装API文档:$ sudo yum install devhelp。
<strong> 下载、编译、运行示例程序</strong>
(1)下载示例程序:$ git clone git://git.moblin.org/sample_apps.git
(2)编译示例程序:
* $ cd sample_apps
* $ ./autogen.sh
* $ make
* $ sudo make install
示例程序很简单,也可以通过执行gcc命令直接编译该程序(src/helloworld.c),得到可执行文件:
$ gcc –o helloworld helloworld.c `pkg-config --cflags --libs clutter-0.9`
(3)运行示例程序:$ ./src/helloworld,结果如图3所示。
<strong> 结语</strong>
Intel新推出的基于Atom处理器的Moblin移动计算平台是经过优化的开源Linux软件平台,可以增强MID、Netbook和其他移动互联网设备的用户体验。Moblin成功集结了来自Linux不同平台之间前端应用、后端开发的资源与力量,有望在Netbook、MID、车载通信与嵌入式系统上找到打破Windows长久以来的封锁与垄断的突破点,OEM、OSV、ISV已经围绕Moblin成功打造出丰富资源及集合能力的Linux产业生态系统。在移动互联网终端产业中,开放式的Moblin将为国内企业提供更广阔的发展空间。
参考文献:
[1] 倪光南.发展“上网本”是振兴中国信息产业的机遇[J]. Netbook前沿,2009(5)
[2] Bspencer.Create a Moblin image for a netbook or MID [R/OL]. http://moblin.org,2008.09.08
[3] 杨继国.开源移动计算平台Moblin[R/OL],http://www.esbf.org.cn,2009.06
[4] Moblin Community中文网站. http://moblin.csdn.net
[5] Intel Moblin在CSDN的官方博客. http://blog.csdn.net/moblin
[6] 陈渝.面向嵌入式领域的开源软件[R/OL].http://www.esbf.org.cn, 2009.06 |
|