Android 深度探索(卷1)HAL 与驱动开发 第一章Android 系统移植与驱动开发概述 心得体会
Android 深度探索(卷1)HAL 与驱动开发
第一章Android 系统移植与驱动开发概述
心得体会
本章第一节介绍Android 系统架构,一共分为四层,从下到上依次为:
1.第一层:linux内核,主要包括驱动程序以及管理内存、进程、电源等资源的程序。
2.第二层:C/C++代码库,主要包括Linux的.so文件以及嵌入到APK程序中的NDK代码。
3.第三层:Android SDK API,直接面向应用程序的JAVA APK
4.第四层:应用程序,直接面向最终用户的JAVA应用程序(APK程序)
其中重点讲解第一层 Linux 内核。这一层主要包括Linux的驱动程序以及内存管理、进程管理、电源管理等程序。
对于第二节主要是Android移植工作,主要包括移植Linux 驱动和移植HAL(硬件抽象层)
这里着重对HAL了解一下:一般的Android驱动都有对应的HAL,不过HAL也不是必须的,通过NDK也可以直接访问LINUX驱动。
NDK(Native Development Kit):是一系列工具的集合,提供了一系列的工具,帮助开发者快速开发C(或C++)的动态库,并能自动将so和java应用一起打包成apk。
接下来的内容主要是设备的分类以及特点。驱动针对的是存储器和外设(包括CPU内部集成的存储器和外设),而不是针对CPU核。
Linux将存储器和外设分为三类,分别为字符设备(Character devices),块设备(Block devices),网络设备(Network devices)。
最后介绍了下Linux驱动:LED ,只是简单介绍。
本章主要是对Android和Linux驱动做一个简单的介绍,是的我们队Linux驱动有一个感性认识,并为更好地学习Linux驱动的方法和技巧打下基础。
http://www.cnblogs.com/xl9313/