第一章 android系统移植与驱动开发概述linux
Android的系统架构分为四层:android
第 1 层: Linux 内核;网络
第 2 层:·CIC+刊电码库;架构
第 3 层:Android SDK API学习
第 4 层:应用程序blog
系统移植主要工做ci
Andrpid移植可分为两部分:.应用移植和系统移植。开发
除了 cinux 驱动须要移植外,在 Android 系统中还增长了一个硬件而象层。若是为 Android 增长了新的驱动或修改原来的驱动代码, HAL 中的代码就要作相应的调整。所以, Android 移植的主要工做以下 :
移植 linux驱动博客
移植 HALio
查看linux内核版本
方法一:在终端执行 uname –a命令
方法二:。在终端执行 cat /proc/version命令
内核版本号的定义规则
内核版本号的定义规则由下面几部分组成
主版本号
次版本号;
修订版本号;
微调版本号 ;
为特定的 Linux 系统特别调校的描述。
设备的分类
字符设备;
块设备;
网络设备;
Linux 驱动只与 Linux 内核有关,与用户使用的 Linux 系统无关。也就是说,无论是哪一个 Linux 系统,只要使用了一样的Linux内核,驱动就能够通用。惟一能够判断 Linux 内核是否相同的方法就是 Linux内核版本号。只有组成内核版本号的五部分彻底相同,才能说明两个 Linux 系统的内核是相同的。从这一点能够看出,学习 Android 驱动开发,实际上就是 学习 Linux 驱动开发,只是 Android 增长了一个 HAL,这是Android 特有的。通常的 Android 驱动 都会有对应的 HAL,不过 HAL 也不是必需的,经过 NDK 也能够直接访问 Linux 驱动。
个人博客地址http://www.cnblogs.com/qianzhanluojin/