通过阅读第一章,我了解了:
一.Android由四层系统构架构成:
1.Linux内核(负责Linux的驱动程序以及内存、进程、电源等管理操作)
2.C/C++代码库(Linux下.so文件)
3.Android SDK API(由Java编写)
4.应用程序(系统所有Android应用程序在这里运行)
二.Android移植:
Android移植都是指Android操作系统的移植,其可分为两部分:
1.应用移植
2.系统移植。
系统移植除了移植CPU架构外,最主要的就是移植Linux驱动。
HAL(Android所特有的)表示硬件抽象层,是普通的Linux程序库,只是Android SDK通过HAL直接访问Linux驱动。HAL不是必需的,Android移植的主要工作是移植Linux驱动;移植HAL.
三、Linux设备驱动
驱动就是直接和硬件交互的一类程序,负责对硬件进行抽象;提供应用程序可方位的API,只要应用程序通过驱动来访问硬件,就不需要修改应用程序的源代码。
Linux系统的内核版本可:
1.在Linux终端执行下面命令。Uname -a,如果当前系统是Ubuntu Linux11.10,会在Linux终端输出信息,白框内是Linux内核的版本。
2.在Linux终端执行下面命令。Cat /proc/version.在Linux终端输出信息,白框内是Linux内核的版本。
四、总结
这一章介绍了安卓驱动开发和系统移植的主要内容,对安卓与Linux驱动做了一个总体的介绍。通过对第一章的学习,我对Linux驱动开发有了一个大致的认识。在今后的学习中要准备一个自己熟悉的Linux操作系统,用于开发和测试Linux驱动,建议使用Ubuntu Linux10.04及以上版本,学习相关的硬件知识,最主要的,是要不断地实践,完善自己,武装自己!
http://www.cnblogs.com/wulilele/