码迷,mamicode.com
首页 > 移动开发 > 详细

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

时间:2015-05-04 22:10:38      阅读:302      评论:0      收藏:0      [点我收藏+]

标签:android

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

1. JNI技术:
(1).JNI技术简单的说就是在本地Java语言声明本地方法和加载动态链接库(.so文件)
(2).动态链接库(.so文件)是由NDK编译C/C++文件而成的。

2. HAL层开发:
(1).HAL是Hardware Abstraction Layer的简称。也称为硬件抽象层。
(2).硬件访问服务是在Framework层实现的。
(3).硬件访问服务是用Java语言实现的,硬件抽象层是用C++语言编写的。因此硬件访问服务必须通过JNI技术调用硬件抽象层的接口。
(4).硬件抽象层调用Linux Kernel底层的接口。

3. Android HAL存在的主要原因:
(1).并不是所有的硬件设备都有标准的Linux Kernel的接口。
(2).某些设备制造商并不希望公开硬件驱动,所以采用HAL开发的方式。
(3).针对某些硬件,Android有一些特殊的需求。

附图:
技术分享
注:
Android包含一个C/C++库的集合,使Android系统的各个组件使用。
这些功能通过Android的应用框架层暴漏给开发者。

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

标签:android

原文地址:http://blog.csdn.net/u014225510/article/details/45485591

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!