嵌入式技术
嵌入式linux中文站详细介绍了MeeGo系统构架。
MeeGo平台被精心设计多个必要的组件,以便为提供最好的用户体验。MeeGo分为三层:
1,MeeGo操作系统基础层,包含Linux内核及其核心服务,以及为MeeGo支持多种平台的硬件适配模块。其中核心服务包括配置数据库GConf,系统库,消息总线和平台信息。
2,MeeGo 中间层,包括网络服务(蓝牙、语音、即时通讯、电话、连接管理),互联网服务(WebKit、网络服务库、地理信息),虚拟图形图像服务 (3D[OpenGL]、2D[Cairo]、界面展现[Pango,Qt]、X窗口系统等)、媒体服务(媒体框架[GStreamer]、摄像、编解码器[GStremer插件]、音频、UPnp),数据管理(打包管理等),设备服务(设备健康、资源管理、感应、备份还原),个性化服务(PIM、设备同步等)。在这些服务上面,有一层MeeGo API层,用于程序员的开发。
3,MeeGo用户体验层,为多个平台提供基本的用户体验,主要包括UI框架和程序,MeeGo为手持电话、上网本以及其他平台提供支持。
MeeGo操作系统基础,作为连接应用程序与实际数据处理的桥梁,需要每个硬件平台的制造商提供一下三种扩展:
1,内核驱动,如Windows一样,各个设备的厂商提供驱动程序,如USB、蓝牙等设备。
2,体系架构扩展包,用于支持某些特定硬件架构特性的软件,如ROM上的固化代码。
3,内核配置文件,这个文件不仅被MeeGo初始提供,硬件生产商也需要使用这个文件,这个文件描述了各个设备的配置和选项,比如处理器类型,网络支持能力,内核调试选项等。
X窗口系统,又称X11或简称X,提供了图形框架及其接口,硬件厂商需要提供两类扩展:
1,核心体系框架扩展,这些扩展包用于提供特定的架构特性,比如图像控制、显示和加速。
2,X配置文件:这个文件用于提供X窗口系统初始化时的配置和运行参数,如果硬件存在设备相关的被X窗口系统使用到的配置,则需要写到该文件里面,比如显示的分辨率。
其他需要硬件厂商提供的东东
1,启动加载器:启动加载器的工作是为操作系统提供必要的硬件初始化以及准备工作,它提供的是主板/处理器相关的代码,启动加载器是ROM代码和内核的粘合剂。
2,图像设备格式化工具:提供了怎样往设备上写入图像的细节,这个工具被用来创建一个以恰当格式运行的设备对象。
3,猫的支持:为特定蜂窝电话提供支持的电话插件。
4,硬件相关的媒体编解码器。
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的用户帐号管理。
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.
全部0条评论
快来发表一下你的评论吧 !