Android系统的移植工作的目的是为了在特定的硬件上运行Android系统。在移植的过程中,把握关头要点,削减工作量是一个主要的方面。从工作的 角度,凡是的体例为,首先要熟悉硬件抽象层的接口,其次要集成和复用已有的驱动轨范,首要的工作量在硬件抽象层的实现中。为了更好地舆解和调试系统,也应 该恰当地体味上层对硬件抽象层的挪用情形。
中国电子网-新闻c h n - e
图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尺度内容)
Android中具有良多组件,但并不是每一个部件都需要移植,对于一些纯软的组件,就没有移植的需要。对于一些部件,例如浏览器引擎,虽然需要下层收集的撑持,可是并非直接为其移植收集接口,而是经由过程无线局域网或者电话系统数据毗连来完成尺度的收集接口。
Android的移植首要可以分成几个类型:基本图形用户界面(GUI)部门,搜罗显示部门和用户输入部门;和硬件相关的加速部门,搜罗媒体编解
码和OpenGL;音视频输入输出环节,搜罗音频,视频输出和摄像头部门;毗连部门,搜罗无线局域网,蓝牙,GPS;电话部门;隶属部件:搜罗传感器、背
光、振动器等。
除了以上的移植方面,电源打点也长短常主要的一个方面,它和Android的各个子系统都有关系。
Android系统首要需要移植部件如图2所示。
文章评论(0条评论)
登录后参与讨论