Android系统移植与驱动开发概述
1.1 Android 系统架构
1.2 Android系统移植的主要工作
1.3 查看linux内核版本
1.4 linux内核版本号的定义规则
1.5 linux驱动设备
1.1 Android系统架构如图所示:
第一层是linux内核,第二层是c/c++代码库,第三层是Android SDK API,第四层是应用程序。
1.2 Android系统移植的主要工作
Android移植可以分为两部分:应用移植和系统移植
1>应用移植:是将应用程序移植到某一特定硬件平台上,为了弥补硬件间的差异,我们需要对源码进行修改。
2>系统移植:是指让Android操作系统在某一个特定的硬件平台上运行,系统移植除了移植CPU架构外,最重要的就是移植linux驱动。
Android移植在很大程度是linux内核的移植,linux内核移植主要就是移植驱动程序,不同的linux版本的驱动程序不能通用,需要重新修改源代码,并在新的linux内核下重新编译才可以运行在新的linux内核版本下。
1.3 查看linux内核版本
目前linux内核主要维护3个版本:linux2.4、linux2.6、linux3.x,其中linux2.6是使用最广泛的内核版本
查看linux内核版本的方法:
在终端下输入
)# uname -a
)# cat /proc/version
Linux 内核版本号的定义规则
◇ 主版本号
◇ 次版本号
◇ 修订版本号
◇ 微调版本号
◇ 为特定的linux系统特别调校的描述
1.4 Linux驱动设备
◇ 字符设备
◇ 块设备
◇ 网络设备
小结:
不管哪个linux系统,只要使用了同样的linux内核,驱动就可以通用,唯一的判断linux内核是否相同的方法就是linux版本号。