Android的系统架构包括4层,这4层包含:Linux内核、C/C++代码库、Android SDK API、应用程序。
Android可分为两部分:应用移植和系统移植。应用移植是指将第4层的应用程序移植到某一个特定硬件平台上。Android系统移植是指让Android操作系统在某一个特定硬件平台上运行。Android移植的主要工作如下:移植Linux驱动、移植HAL。
查看Linux内核版本的方法:
方法1:在Linux终端执行下面命令。
uname –a
方法2:在Linux终端执行下面命令。
cat/proc/version
Linux内核版本号有以下几部分组成:主版本号、次版本号、修订版本号、微调版本号、为特定的Linux系统特别调校的描述。
学习Linux驱动要做些什么:
1、 准备一个自己熟悉的Linux操作系统,用于开发和测试Linux驱动,建议使用Ubuntu Linux 10.04及以上版本。
2、 准备一块开发板。
3、 学习GNU C。
4、 学习相关的硬件知识。
5、 不断地实践。
Linux将存储器和外设分为3大类:字符设备、块设备、网络设备。
学习Android驱动开发,实际上就是学习Linux驱动开发,只是Android增加了一 个HAL,这是Android特有的。一般的Android驱动都会有对应的HAL,不过HAL也不是必须的,通过NDK也可以直接访问Linux驱动。