Maemo 中使用和定义的术语:
  • ABI
    应用二进制接口,主要提供目标代码层次的接口。描述了应用程序和操作系统之间,一个应用和它的库之间,或者应用的组成部分之间的低层接口 。ABI不同于API ,API定义了源代码和库之间的接口,因此同样的代码可以在支持这个API的任何系统中编译器 ,然而ABI允许编译好的目标代码在使用兼容ABI的系统中无需改动就能�运行。
  • ALSA
    高级Linux声音架构,这是Linux kernel的一个组件,目的是取代OSS(Open Sound System),为声卡提供驱动支持.
这里有关于 ALSA 的详细介绍: http://gentoo.linuxsir.org/doc/cn/alsa-guide.xml
  • API
    应用编程接口,主要提供代码层次的接口。
  • applet
    小应用程序,主要集成到Hildon 中。HildonMaemo AppFramework的名字。Applet名字主要用在Java中,目前这个概念逐渐被引入手机系统中,并且脱离了Java。我们看看wiki上面对applet的解释:http://www.ideagrace.com/wiki/index.php?title=APPLET&oldid=1452
  • ARMEL
    A name that e.g. Debian uses for the little endian
    ARM EABI (ABI for the ARM architecture).
  • Bluetooth
    一个规范:在移动和固定设备之间的短距无缝通信。
  • BT
    就是Bluetooth的简写。
  • cURL
    使用URL语法传送文件的命令行工具。
  • devkit
    devkit
    开发包是Maemo SDK的一部分,主要包含一些软件开发工具。 Maemo SDK里面有多个devkit开放包,比如doctools 开发包。
  • ESD
    一个轻量级的声音后台程序。主要的目的就是把多个音频流混合处理后,由单个音频设备播放。
  • GPL
    GNU
    公共许可协议。这个就不多讲了,我们知道就行,深入理解它的人也不多。
  • GStreamer
    一个跨平台的多媒体框架:可以在这个框架的基础上做大部分的多媒体相关的开发。这个框架也是使用比较多的multimedia framework. 除了Android平台没有直接使用外,其他的几个平台都在这个框架基础上构建middleware的。
  • GTK+ (GUI ToolKit+)
    GUI
    工具开发包,提供面向对象的图像接口,一般Linux手机平台都用它。这里的代码初看是很别扭的,需要对GObject有个清醒的认识和使用,然后才能习惯这里的面向对象的使用方法。
  • GUI
    图形用户接口。无论是在window下,还是Linux下都逃避不过这个概念。
  • Hildon
    Hildon
    Maemo平台的Application framework,由Nokia公司开发。这个framework也是构建于很多开源项目之上的,比如D-Bus, GConf,等等。
  • Hildon Desktop
    Hildon Desktop
    Maemo Chinook 版本的主要UI组件,是Maemo desktop的改写。
  • Internet Tablet
    Internet Tablet
    Nokia公司“杜撰”/“提出”的一个名词:就是为方便上网的带有触摸屏的移动设备。
  • initfs
    初始文件系统。主要用于kernel启动时当作根文件系统。比如说:硬件的初始化。启动后被挂载到/mnut/initfs目录下面。
  • LGPL
    宽松点的GPL.
  • Linux
    严格的讲,Linux是类Unix操作系统的内核。不过,这个名词更多的用于描述一个整个的Linux操作系统,包含kernel, 应用程序以及工具等。
  • maemo
    Nokia
    为移动设备开发的软件平台。主要基于GNU/Linux GNOME/GTK+技术。同时含有一些具有知识产权的组建。
  • maemo.org
    Nokia
    维护的一个开发者社区。在这里你可以结识一些热心的开源贡献者。
  • maemo desktop
    Maemo Bora
    版本的UI组件。
  • maemo-af-desktop
    等同于maemo desktop.
  • maemo SDK
    一个软件开发工具包,通过使用这个开发工具,可以在PC机上开发和移植程序到Maemo平台。这也是不能直接购买N770/N80/N81的开发者,在Maemo平台上研究开发的主要途径。
  • Nokia Internet Tablet OS
    Maemo
    平台加上Nokia公司的一些具有知识产权的应用,打包而成的一个image文件。可以直接下载到N770/N80/N81运行。
  • OpenSSL
    OpenSSL
    SSLSecure socket layer)和TLS(Transfer Layer Security)的一个开源实现。SSLTLS是安全传输协议。这里有详细的介绍:http://www.linux-cn.com/html/network/security/20070426/20747.html
  • OSSO
    OSSO
    Open Source Software Operations缩写, Nokia 公司把众多开源者贡献的代码进行整合,集成。形成可以放到Internet Tablets运行的程序。这个整合过的东西,好像就不公布源码了,就形成了Nokia公司所谓的具有知识产权的部分。
  • rootfs
    设备上的根文件系统。
  • rootstrap
    启动引导,使SDK的一部分。在Scratchbox中,Rootstraptarget的根文件系统。
  • Sardine
    这是一个版本的名称而已,是基于Hildon基础上发布的。
  • SSL
    The Secure Sockets Layer.
    主要用于Internet上面传输数据的安全考虑的。
  • toolchain
    工具链,是SDK的一部分,主要是ARM交叉编译工具,比如编译器和连接器。
  • TLS
    传输层安全。类似于SSLInternet方面的安全协议。
  • Widget
    GUI
    元素。主要是用户同应用程序之间的交互。比如:按钮、菜单、滚动条等等。Widget主要是GTK的东西。和目前网络上流行的yahoo widgetgoogle gadget等,不是一回事,GTKwidget就像Visual C++的控件(controller), yahoo widget, google gadget是小应用程序,这些程序本身可能使用了不少GTK widget。之所以把小应用程序称为Yahoo widget或者google gadget. 因为他们高兴这么叫,我也不知道原因了。
 
 
附录:
QA:
 
Q:
为什么去分析Maemo平台呢?
A:
分析一个平台是为了掌握它,吸收有用的东西为我所用。
 
Q:
为什么选择Maemo平台呢?
A:
Linux手机平台目前主要有ALP,Maemo, LiMo, Android, etc. (欢迎大家补充 J)
目前不少都是打着开源的旗号的,但是公开的力度不同:ALP目前仅仅公开了其Hilker部分;Maemo全部公开;LiMo在圈子之内公开,普通的外界的研发人员没有机会得到;Android开放力度不错,不过能看到的东西目前还很少;
相比之下,Maemo平台成熟些,对于普通的研发人员可以分析掌握的东西比较系统和全面。大家知道:Nokia在Symbian上面是独大,但并不是说她会放弃Linux手机操作系统,并且一直在研制Linux手机操作系统:Maemo,虽然目前Maemo不能打电话,但是Nokia如果想把Telephony加入Maemo平台,这就是一个完整的Linux手机操作系统!
 
Q:
采用什么步骤去分析Maemo平台呢?
A:
我觉得直接去分析源码会出力不讨好,非常片面。
我准备这样搞:
1 系统的分析文档,并且尽量写成直白的、比较容易理解的总结文档;
2 然后搭建环境
3 分析源码,分析sample code.
4 能做些修改,主要针对平台
 
在今后的文章中,这个QA就放在系列文章的头部或者附录,可能有新的修改和补充。
 
 
Logo

更多推荐