• MeeGo软件架构综述(转)


    MeeGo软件架构(转)

    8已有 100 次阅读  2010-10-20 16:53   标签:  MeeGo  软件  架构 
    MeeGo软件架构综述

    MeeGo平台精心设计所有必要模块是为了给设备使用者最好的用户体验。正如以下MeeGo架构综述图所表现的,MeeGo系统主要分成三个部分:

    • MeeGo操作系统底层 包含linux核心服务组件以及支持不同硬件架构的硬件自适应层。
    • MeeGo操作系统中间件层 提供硬件和独立的API使用模型用于创建原生应用和web运行时应用。
    • MeeGo用户体验层 提供多平台的用户体验。最初的MeeGo发布版本将包括手持式设备和上网本的用户体验,随着时间的推移,其他平台的用户体验内容也将被加入到其中。

    MeeGoArch1.png



    下面的部分降到每个子系统和功能模块进行描述。
    MeeGo操作系统底层
    硬件自适应层

    硬件供应商必须提供多个软件组件以确保MeeGo可以正常在他们的平台架构下运行。这些软件组件包括:平台内核驱动,平台核心组件,内核配置管理组件,X相应组件和配置工具,modem驱动,以及硬件相关的多媒体组件。更多的硬件支持信息,详见这儿

    以上这些我们称之为硬件自适应层。具体细节如下:

    内核

    内核是Linux的核心,充当着应用程序和硬件层之间的桥梁的角色。支持MeeGo的硬件平台需要提供三类相关组件。

    • 内核驱动:这是一套需要与硬件进行交互的软件驱动程序。例如,天线、摄像头、USB、3G模块、蓝牙及触摸屏等这些硬件的驱动程序。
    • 核心架构组件:这是一个额外的软件包,可将它附加到内核中以支持某些硬件的相关功能。例如:固件。
    • 内核配置文件:这 个文件包含了一些让硬件设备正常工作所需要的选项参数。在MeeGo中,这个配置文件是内核通用配置文件的组成部分,用于硬件提供商指定具体平台参数的。 这个文件对每个特定设备提供了详细的配置信息,例如包括设备架构,处理器类型,设备驱动配置菜单,网络支持以及内核调制选项等。

    X窗口系统

    X窗口系统(也叫做X11或简称为X)提供了图形接口以及构建这些接口的基本框架。MeeGo为每一个支持的硬件平台提供了两套基本的X组件。


    • 核心架构组件可将这些附加软件包添加到X系统中以支持某些架构特性。例如,图像控制器,显示及图形加速。
    • X系统配置文件这个文件为X窗口系统的初始化提供了相关的配置及运行参数支持。如果X窗口系统需要支持特定的硬件配置,则这些配置信息必须添加到指定的硬件平台X配置文件中。比如显示输出和分辨率调整。

    杂项
    • BootloaderBootloader的唯一任务就是为硬件适应操作系统执行必要的初始化,它包含主板和特定处理器代码。Bootloader为固件和内核提供必要的联合作用。
    • 镜像设备格式化工具他提供了如何将一个镜像写到特定设备上的细节。它是一个用于在正确的设备格式下创建出可执行镜像的工具。
    • 调制解调器支持为特定的移动电话调制解调器定制的移动电话框架插件。硬件相关多媒体编解码器硬件相关编解码器,例如,硬件附件/卸载编解码器。

    MeeGo内核

    MeeGo使用一个来自kernel.org的linux内核,该内核附带架构相关配置及所需补丁,另外,它还为每个支持的平台提供了驱动程序。


    MeeGo系统中间件
    通信服务

    通信服务能够为平台提供语音和数据连接的管理,通过WIFI,3G,WiMax和蓝牙等一系列通信技术提供手机电话和IP电话的语音和和数据连接服务。

    • 连接管理(ConnMan)
    • 电话APIs(oFono)
    • IP,VOIP,IM,Pres(Telepathy)
    • 蓝牙(bluez)

    互联网服务

    互联网服务提供Web内容,提供web运行时支持,与web服务交换数据,及定位等功能。

    • Layout Engine(WebKit)
    • Web Runtime(WebKit)
    • Web Services(libSocialWeb)
    • Location(GeoClue)

    视觉服务

    视觉服务确保了该平台的核心2D和3D成像能力,包括提供国际化文本支持和提高底层硬件的图形加速能力。


    • 3D Graphics(OpenGL/OpenGL ES)
    • 2D Graphics(Cairo QPainter)
    • i18n Rendering(Pango,QtText)
    • X Window System

    多媒体服务

    多媒体服务的目标是为系统提供音频或视频回放、流媒体和影像功能。一般来说,多媒体服务需要实际的音/视步数据处理(恢复、多路分配器、解码/编码、搜索等)

    • Media Framework (GStreamer)
    • Camera (GStreamer plugin)
    • Codecs (GStreamer plugins)
    • Audio (PulseAudio)
    • UPnP (GUPnP)

    数据管理

    数据管理子系统提供以下服务:提取和管理文件元数据(如支持提取和搜索多媒体文件的元数据),恢复设备原始数据(如设备位置,电缆状态),管理设备安装数据包。

    • Content Framework (Tracker)
    • Context Framework (ContextKit)
    • Package Manager (PackageKit)

    设备服务

    设备服务子系统包含一组管理设备状态的服务,包括使消费者安全使用的任务东西,以及与设备交换数据,传感器数据提取,整个系统策略,同步数据设备、设备数据的备份和存储。

    个性化服务

    确保能在设备上管理用户数据,包括私人信息管理(也就是日历,通讯路,任务)和管理用户帐号以确保登陆web服务的独立性。


    MeeGo安全架构

    MeeGo使用一个可扩展的安全框架,通过提供基于角色的访问控制,适用于广泛的系统从完全开放的系统,系统需要被部分锁定的安全。这是有一个灵活的和可更新的政策,是由软件stack.MeeGo安全关键件取得的成就,不是MeeGo 1.0版本的一部分。


    MeeGo API

    MeeGo API 提供应用开发接口,当前版本包括qt 4.6.2.附加功能正在开发,欲知祥情,请参考:MeeGo API page

    Qt

    Qt为应用开发者提供艺术级图形界面。Qt完全面向对像,容易扩展以及允许真正的组件编程。
          Component(s): QtGui, QtCore, QtDBus, QtMultimedia, QtNetwork, QtOpenGL, QtScript, QtSql, QtSvg, QtWebKit, QtXml, Qt3Support, QtDeclarative, QtHelp, QtScriptTools, QtTest, QtXmlPatterns
         Dependencies: http://doc.trolltech.com/4.6/requirements-x11.html
         References: Qt 4.6.2 API Documentation


    参考文档:http://meego.com/developers/meego-architecture
  • 相关阅读:
    redis五中数据类型
    MySQL索引
    mysql中如何设计计数器表(待续)
    mysql 数据类型选择原则
    1.开篇(听说你还在艰难的啃react源码)
    关于wamp的HTML, PHP, mysql 三者的操作与联系
    关于wamp的HTML, PHP, mysql 三者的操作与联系
    关于wamp的HTML, PHP, mysql 三者的操作与联系
    SQL server T-sql语句查询执行顺序
    SQL server T-SQL索引详解
  • 原文地址:https://www.cnblogs.com/yaoliang11/p/1869792.html
Copyright © 2020-2023  润新知