通常以应用移植和系统移植的为Andorid系统移植的主要部分。同时为了适应不同平台硬件设备,对源代码进行相应的修改。除了要移植相适应的CPU架构,最重要是移植Linux驱动。
但是由于一些特别的原因,通常要实现的驱动程序所队形的硬件是自己特有的,这就需要从头开始编写驱动程序以及相关的配置文件。不过在了解编写Linux驱动和Andorid实际上没有看起来的那么复杂。因为驱动和HAL的代码远没有Android SDK 和Android 的应用程序的代码量大。
了解基本的指令操作,例如查看Linux内核的版本号,并且理解版本号的定义规则有利于更好的理解Andorid系统移植。显然尝试Linux驱动开发和GUN C的版本驱动有利于掌握一些与驱动相关的硬件知识。设备驱动的发展和作用往往体现在内部集成的UART、USB控制器。从最简单的Linux驱动开发通过LED的驱动更容易理解Linux的驱动开发的全过。Android开发环境的配置在Linux系统下需要比较繁琐的步骤,没有简单的一键环境配置,对开发者的自身基础技术要求较高。