什么是Android?

答:Android就是移动设备的软件栈,包括(一个完整的操作系统,中间件,关键应用程序), 底层是Linux内核,包括(安全管理, 内存管理,进程管理 ,电源管理,硬件驱动…)。

Android操作系统是基于Linux2.6版本的,Android操作系统是,基于在Linux核心基础之上进行了包装,就像Windows操作系统一样,是基于DOS命令行。

Android操作系统是移动设备操作系统。

Android操作系统免费开源。

体系架构图

 

第一层:Applications 应用层,我们能够看得到的APP应用,就在这一层,这一层的核心应用有(Home,Contacts,Phone,Browser)。

第二层:Application Framework 应用框架层,我的理解这就是API,学习Android上层APP开发就是学习这一层的API使用。

第三层:Libraries第三方类库,这些类库包括(Sqlite数据库的,Media多媒体的,OpenGL绘图的,WebKit浏览器的 …),这些第三方框架类库, Google不是说自己去开发,而是就地取材,别人有,就拿过来用,并且免费开源;
在右旁边小黄色区域就是AndroidRuntime,Android运行时环境,相当于Java的运行时环境JRE,里面有DalivkVM,下一篇博客会专门讲解DalivkVM。

第四层:最底层驱动成,Linux2.6内核,这一层有很多Driver,Driver是与硬件挂钩的;

 

Binder Driver 这个驱动要注意一下,这个驱动以前在Linux内核是没有的,这是Google工程师加入进去的, 为什么要加入这个驱动呢,是为了解决IPC进程间通信,也就是(bindService结合AIDL远程服务通讯