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

分享到:

Android系统的移植工作的目的是为了在特定的硬件上运行Android系统。在移植的过程中,把握关键要点,减少工作量是一个重要的方面。从工作的角度,通常的方法为,首先要熟悉硬件抽象层的接口,其次要集成和复用已有的驱动程序,主要的工作量在硬件抽象层的实现中。为了更好地理解和调试系统,也应该适当地了解上层对硬件抽象层的调用情况。
  移植方面主要的工作有两个部分:
Linux驱动
Android系统硬件抽象层
Linux中的驱动工作在内核空间,Android系统硬件抽象层工作在用户空间,有了这两个部分的结合,就可以让庞大的Android系统运行在特定的硬件平台上。
Android移植的主要工作如图1所示。

 

图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;电话部分;附属部件:包括传感器、背光、振动器等。

继续阅读
英特尔将发布下一代Atom系列处理器的新型“ Tremont”

英特尔面向移动设备的第10代Core处理器既包括4.5瓦的Comet Lake处理器,也包括28瓦的Ice Lake处理器。不过,该公司还有另一系列低功耗处理器,按照去年公布的路线图,该公司将在今年和明年分别推出新品,今年的新品或将在下周发布。

恩智浦与Google携手合作,为消费者提供移动出行体验

作为安全连接解决方案领域的领导者,以及全球超过750个城市使用的领先的非接触式交通支付和访问解决方案MIFARE的发明者,恩智浦半导体宣布,已和Google就集成恩智浦的新型MIFARE 2GO云服务达成合作。MIFARE 2GO云服务是一种完整的端到端解决方案,用于管理集成到装有Google Pay的移动设备和可穿戴设备的基于MIFARE的数字化凭证。

云计算如何从中心走向边缘?

通过与Qualcomm和Andreesen Horowitz等公司技术领导人的探讨,我发现越来越多的证据表明,新的变革即将发生。它带来的影响将完全不亚于我们熟知的计算技术的革命性变革。如今,云是进行数据处理的主要框架。但是,当云计算走向终结时,会发生什么呢?您可能认为目前云计算尚未发挥全部潜力。在一定程度上,事实确实如此。但是,我相信物联网的加速发展实际上会导致云回归存储数据以供参考的职能,而不是像目前一样持续用于处理数据。

iPhone10年,苹果干了哪些事情?

2007年,当第一款iPhone诞生时,苹果公司便喊出了"重新发明手机(Apple Reinvents the Phone with iPhone)"的口号。十年已过,iPhone毫无疑问地引领着智能手机的变革。更重要的是,十年之间,在iPhone的催化下,围绕移动智能设备所建立的生态体系,已经成为这个时代科技创新的核心驱动力量。

苹果lightning接口与Tpye-C究竟有何不同?

在Type-C接口定义诞生之前,USB接口家族已经有了Type-A、Type-B、Mini-A、Mini-B、Micro-A和Micro-B几种形式,在我们日常生活中相对比较熟悉是Type-A(广泛应用于电脑、充电器等)和Micro-B(广泛应用于手机、平板等移动设备)。