您的位置:首页 > 运维架构 > Linux

Android Framework应用框架层和HAL硬件抽象层以及Linux Kernel底层之间的关系

2015-07-06 00:30 766 查看
Android应用框架层和硬件抽象层以及底层之间的关系

JNI技术:

(1).JNI技术简单的说就是在本地Java语言声明本地方法和加载动态链接库(.so文件)

(2).动态链接库(.so文件)是由NDK编译C/C++文件而成的。

HAL层开发:

(1).HAL是Hardware Abstraction Layer的简称。也称为硬件抽象层。

(2).硬件访问服务是在Framework层实现的。

(3).硬件访问服务是用Java语言实现的,硬件抽象层是用C++语言编写的。因此硬件访问服务必须通过JNI技术调用硬件抽象层的接口。

(4).硬件抽象层调用Linux Kernel底层的接口。

Android HAL存在的主要原因:

(1).并不是所有的硬件设备都有标准的Linux Kernel的接口。

(2).某些设备制造商并不希望公开硬件驱动,所以采用HAL开发的方式。

(3).针对某些硬件,Android有一些特殊的需求。



附图:

这里写图片描述组件使用。

这些功能通过Android的应用框架层暴漏给开发者。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: