android hal 编译,Android HAL简析

前言

Android HAL是Hardware Abstract Layer的缩写,顾名思义,就是硬件抽象层的意思,为什么要搞这么个东西呢,大概是以下原因吧:

软件设计的角度

抽象层概念是很多软件在设计时都采用的一种设计方法,可以达到抽象和隔离上下层的目的,这样子下层实现变化时,上层逻辑不用改动,这种设计方法在很多开源软件上都可以看到,比如Linux内核的vfs、minigui的gal和ial、ffmpeg、opengl等。

版权方面

Android基于Linux内核实现,Linux是GPL许可,即对源码的修改都必须开源,而Android是ASL许可,即可以随意使用源码,无需开源,因此将原本应该位于Linux内核的硬件驱动逻辑转移到Android平台来,就可以不必开源,从而保护了厂家的利益。因此Android就提供了一套访问硬件抽象层动态库的接口,各厂商在Android的硬件抽象层实现特定硬件的操作细节,并编译成so库,以库的形式提供给用户使用。

Android HAL支持以下模块:

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值