`
Poechant
  • 浏览: 213966 次
博客专栏
Bebe66e7-3a30-3fc9-aeea-cfa3b474b591
Nginx高性能Web服务...
浏览量:23603
5738817b-23a1-3a32-86de-632d7da73b1e
Cumulus实时媒体服务...
浏览量:21505
社区版块
存档分类
最新评论

Android开发之道(2)系统体系结构概要

 
阅读更多

转载请注明本文来自:编程艺术家Poechant的CSDN博客 http://blog.csdn.net/poechant


1、Android Architecture Overview




2、四层结构

应用层(Application Level),应用框架层(Application Frameworks),系统运行库层(Libraries and Android Runtime Level)和Linux内核层(Linux Kernel Level)。

(1)应用层

应用层包含众多有应用开发者开发的应用(这句话好绕啊⋯⋯),而且Google在开发Android时,也已经在应用层绑定了一些核心应用,比如Email客户端、SMS短消息程序、日历、地图、浏览器、联系人、电话、通话记录等。

(2)应用框架层

该层就是应用开发者所必须了解的开发时所需要使用的API。基于该层的应用开发,是相当容易的,开发者可以更多地将精力用在如何做好应用软件身上。应用框架层所提供的组件很多,包括活动管理器(Avtivity Manager)、窗口管理器(Window Manager)、内容提供器(Content Providers)、视图系统(View System)、包管理器(Package Manager)。

(3)系统运行库层

该层,是一些C/C++库,来提供底层的支持。主要包括Bionic系统C库(C语言标准库,系统最底层的库)、多媒体库(MediaFramework)、SGL(2D图形引擎库)、SSL(位于TCP/IP协议与各种应用层协议之间,提供数据通信支持)、OpenGL ES 1.0(3D效果支持)、SQLite(关系数据库)、Webkit(Web浏览器引擎)、FreeType(位图bitmap及矢量图vector)。

(4)Linux内核层

Android的Linux内核层是基于LInux Kernel 2.6版本。Linux内核层,主要是作为硬件和软件栈之间的抽象层。在软件栈视角看,Linux内核就是“硬件”。内核层提供如下一些驱动:显示驱动(Display Driver)、键盘驱动(Keyboard Driver)、Flash内存驱动(Flash Memory Driver)、照相机驱动(Camera Driver)、音频驱动(Audio Driver)、蓝牙驱动(Bluetooth Driver,基于IEEE 802.15.1)、WiFi驱动、Binder IPC驱动(Android的一个特殊驱动程序,具有单独的设备节点,提供进程间通信)、Power Management(电源管理)。


转载请注明本文来自:编程艺术家Poechant的CSDN博客 http://blog.csdn.net/poechant

-
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics