• 设为首页
  • 收藏本站
  • 手机版
  • 微博
  • 微信
    微信公众号 添加方式:
    1:搜索微信号(888888
    2:扫描左侧二维码
  • 快捷导航
    查看: 3529|回复: 0

    Android平台移植应该做两步工作

    [复制链接]
  • TA的每日心情
    难过
    2024-5-26 18:39
  • 签到天数: 2 天

    [LV.1]初来乍到

    4327

    主题

    73

    回帖

    2495

    积分

    管理员

    积分
    2495

    社区居民终身成就奖宣传大使奖社区明星

    发表于 2011-4-26 20:35:09 | 显示全部楼层 |阅读模式
    Android系统的移植工作的目的是为了在特定的硬件上运行Android系统。在移植的过程中,把握关键要点,减少工作量是一个重要的方面。从工作的角度,通常的方法为,首先要熟悉硬件抽象层的接口,其次要集成和复用已有的驱动程序,主要的工作量在硬件抽象层的实现中。为了更好地理解和调试系统,也应该适当地了解上层对硬件抽象层的调用情况。  移植方面主要的工作有两个部分:
      Linux驱动
      Android系统硬件抽象层
      Linux中的驱动工作在内核空间,Android系统硬件抽象层工作在用户空间,有了这两个部分的结合,就可以让庞大的Android系统运行在特定的硬件平台上。
      Android移植的主要工作如图1-4所示。
    图1 Android移植的主要工作
      在具有了特定的硬件系统之后,通常在Linux中需要实现其驱动程序,这些驱动程序通常是Linux的标准驱动程序,在Android平台和其他Linux平台基本上是相同的。主要的实现方面是Android系统中的硬件抽象层(Hardware Abstract Layer),硬件抽象层对下调用Linux中的驱动程序,对上提供接口,以供Android系统的其他部分(通常为Android本地框架层)调用。
      提示:Android硬件抽象层的接口是本地移植层的接口,不属于标准API,不具有向前或者向后兼容性。
      在Android系统需要移植的内容,主要包含了以下的各个部分:
      显示部分(Display)
      包括framebuffer驱动+Gralloc模块(可选择是否实现)
      用户输入部分(Input)
      包括Event驱动+EventHub(Android标准内容)
      多媒体编解码(Codec)
      包括硬件Codec驱动+Codec插件(如OpenMax)
      3D加速器部分(3D Accelerator)
      包括硬件OpenGL驱动+OpenGL插件
      音频部分(Audio)
      包括Audio驱动+Audio硬件抽象层
      视频输出部分(Video Out)
      包括视频显示驱动+Overlay硬件抽象层
      摄像头部分(Camera)
      包括Camera驱动(通常是v4l2)+Camera硬件抽象层
      电话部分(Phone)
      Modem驱动程序+RIL库
      全球定位系统部分(GPS)
      包括GPS驱动(通常为串口)+GPS硬件抽象层
      无线局域网部分(WIFI)
      包括Wlan驱动和协议+WIFI的适配层(Android标准内容)
      蓝牙部分(Blue Tooth)
      包括BT驱动和协议+BT的适配层(Android标准内容)
      传感器部分(Sensor)
      包括Sensor驱动+Sensor硬件抽象层
      震动器部分(Vibrator)
      包括Vibrator驱动+Vibrator硬件抽象层(Android标准内容)
      背光部分(Light)
      包括Light驱动+ Light硬件抽象层
      警告器部分(Alarm)
      包括Alarm驱动和RTC系统+用户空间调用(Android标准内容)
      电池部分(Battery)
      包括电池部分驱动+电池的硬件抽象层(Android标准内容)
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    公告:服务器刚移机,
    大家请不要下载东西。
    会下载失败


    QQ 手机版 小黑屋 监管台 遇到问题请联系QQ1308068381 逆天PCB论坛

    Powered by Discuz! X3.5 © 2001-2023

    快速回复 返回顶部 返回列表