Android系统移植与驱动开发心得

Android是什么?

       它是一种优秀的、免费的、开源的嵌入式操作系统,任何人都可以利用Android的源代码定制属于自己的嵌入式系统。总之,Android 是Google开发的基于Linux平台的开源手机操作系统。Android系统可以搭载在手机、MP4、智能电视、车载系统等多种设备上。

Android系统移植

       Android 移植开发的最终目的是开发设备产品。从开发者的角度来看,这种类型的开发以具有硬件系统为前提,在不同类型的硬件系统基础上构建 Android 软件系统。这种类型的开发工作在 Android 系统的底层。移植的任务:(1)Linux 中的相关设备驱动程序(2)Android 本地框架中的硬件抽象层。

Android系统架构图及各层介绍     

                                          

(1) 应用层应用是用Java语言编写的运行在虚拟机上的程序,比如Email客户端,SMS短消息程序,日历等。

(2)  应用框架层这一层是编写Google发布的核心应用时所使用的API框架,开发人员同样可以使用这些框架来开发自己的应用,这样便简化了程序开发的结构设计,但是必须要遵守其框架的开发原则。

(3) 系统运行库(C/C++库以及Android运行库)层当使用Android应用框架时,Android系统会通过一些C/C++库来支持我们使用的各个组件,使其更好的为我们服务,比如其中的SQLite(关系数据库),Webkit(Web浏览器引擎)。

(4) Linux内核层Android的核心系统服务给予Linux2.6内核,如安全性、内存管理、进程管理、网络协议栈和驱动模型等都依赖于该内核,比如Binder IPC驱动,android的一个特殊驱动程序,具有单独的设备节点,提供进程间通信的功能。

 http://www.cnblogs.com/cherry-blossom/

原文地址:https://www.cnblogs.com/cherry-blossom/p/5413887.html