Meego开发工具
Meego为开发人员提供了一整套工具,以便于开发人员能够轻松、迅速的创建各种新的应用。Meego将Qt平台的开发技术融合进来,使用Qt*和Web runtime作为应用程序开发,Qt基于原生的c++,Web runtime基于Web应用程序(HTML,JS,CSS等等)。Qt和Web runtime带来了跨平台开发,使应用程序可以实现跨越多个平台。Web开发工具的插件为标准的Web开发工具,包括Aptana*和Dreamweaver*。
▲Nokia's Qt 4.7 App Framework
Meego的开发工具有开源和非开源之分,其中开源工具包含:Meego*Image Creator,能够启动创建各种格式的自定义系统镜像。GNU*工具(gcc,gdb,·······)。PowerTOP*(IA only),属于平台级的功耗分析和优化工具。非开源的工具为英特商业开发工具(英特尔架构专用),其中包括:英特尔C/C++编译工具,英特尔JTAG和应用程序调试工具,英特尔集成性能基元(英特尔IPP)以及Vtune性能分析器。
Meego的工作模式
关于Meego的工作模式分为几大模块,包括上游的开源项目,Meego开源项目,而中间则是有编译环境、Meego核心、netbook参考框架、IVI参考框架、MID参考框架,逐步推送到操作系统厂商,操作系统厂商结合不同的解决方案设计构成的商业方案,最终研发出不同的设备。
Meego更注重图形的处理,其中有一个中间层为可视化服务,包括3D图形,基于OpenGL*/OpenGL ES进行3D图形渲染的实现,并支持硬件加速,针对不同平台定制的硬件加速功能。2D图形层提供了支持硬件加速的先进的2D绘画功能。国际化渲染组件支持国际化的布局和文本渲染。X.org提供了一个对X Windows系统的实现,包含针对架构特定的驱动程序、补丁以及根据需要进行的配置。
MeeGo OS中间层的各个服务
1,网络服务:管理声音和数据的连接,业务形式上管理的是蜂窝电话和IP电话以及数据的传输,具体的连接技术包括WiFi、3G、WiMax和蓝牙。具体可从以下四方面入手研究:
1,连接管理(ConnMan)
2,电话API(oFono)
3,IP、VOIP、IM、Pres
4,蓝牙(bluez)
2,互联网服务:展现Web内容,提供Web运行库支持,与Web交换数据,以及位置服务,具体可从以下四方面研究:
1,排布引擎(WebKit)
2,Web运行库(WebKit)
3,Web Service(libSocialWeb)
4,Location(GeoClue)
3,虚拟现实服务:提供2D和3D的图形图像服务,包括描绘国际文字以及利用硬件进行图像加速的功能,可从以下四方面研究:
1,3D(OpenGL)
2,2D(Cairo QPainter)
3,i18展现(Pango、QtText)
4,X窗口系统
4,媒体服务:提供音频/视频的回放,主要关注音视频数据的获取、分流、解码、编码、定位等等,可从以下五方面研究:
1,媒体框架(GStreamer)
2,摄像机(GStreamer插件)
3,编解码器(GStreamer插件)
4,音频(PulseAudio)
5,UPnp(GUpnp)
5,数据管理:数据管理子系统提供元数据文件的释放和管理,比如媒体文件的元数据,设备上下文、安装包等。可以从以下三方面研究:
1,内容框架(Tracker)
2,上下文框架(ContextKit)
3,打包管理(PackageKit)
6,设备管理:设备管理子系统,提供一系列服务,管理设备状态,包括一切使设备安全的状态,设备数据交换、数据传感、数据同步、数据备份和还原。
7,个性化服务:管理设备上用户的数据,包括私人信息管理(日历、联系人、任务等)以及web service的用户帐号管理。
其他需要硬件厂商提供的支持
1,启动加载器:启动加载器的工作是为操作系统提供必要的硬件初始化以及准备工作,它提供的是主板/处理器相关的代码,启动加载器是ROM代码和内核的粘合剂。
2,图像设备格式化工具:提供了怎样往设备上写入图像的细节,这个工具被用来创建一个以恰当格式运行的设备对象。
3,猫的支持:为特定蜂窝电话提供支持的电话插件。
4,硬件相关的媒体编解码器。
MeeGo安全机制架构
MeeGo提供一个可扩展的安全机制架构,它提供一种基于角色的准入控制,这种方式被很多系统广泛使用,这种方式使用一种可扩展、可更新的策略,由软件堆栈德关键部件实现。
MeeGo的安全机制不是MeeGo 1.0版本的一部分。
MeeGo API
MeeGo API提供应用程序开发的接口,当前的版本包括Qt4.6.2,其他特性正在开发,更多的细节可参考Meego API page。
Qt
Qt为程序员提供了艺术般的图形界面开发功能,Qt完全面向对象,易扩展,真正允许组件式编程。包括的组件有:QtGui, QtCore, QtDBus, QtMultimedia, QtNetwork, QtOpenGL, QtScript, QtSql, QtSvg, QtWebKit, QtXml, Qt3Support, QtDeclareative, QtHelp, QtScriptTools, QtTest, QtXmlPatterns.
详细请访问: http://doc.trolltech.com/4.6/requirements-x11.html
参考文档:http://doc.qt.nokia.com/4.6/