安卓复习之旅—android系统层次结构

系统结构图:

这里写图片描述

android系统层次结构主要包含4个层次
从上往下依次是:应用程序层(Applications)、应用程序框架层(Application Framework)、系统运行库层(Libraries和Android Runtime)和Linux内核层(Linux Kernel)。

一、应用程序层
Android的应用程序主要是用户界面(User Interface)方面的,通常以JAVA程序编写,其中还可以包含各种资源文件(放置在res目录中)JAVA程序及相关资源经过编译后,将生成一个APK包。Android本身提供了主屏幕(Home),联系人(Contact),电话(Phone),浏览器(Browers)等众多的核心应用。同时应用程序的开发者还可以使用应用程序框架层的API实现自己的程序。
二、应用程序框架层
本层次提供的首先包含了UI程序中所需要的各种控件,该层是Android应用开发的基础,该层包括活动管理器、窗口管理器、内容提供者、视图系统、包管理器、电话管理器、资源管理器、位置管理器、通知管理器和XMPP服务十个部分。
三、系统运行库层
本层次对应一般嵌入式系统,相当于中间件层次。Android的本层次分成两个部分一个是各种库,另一个是Android 运行环境。本层的内容大多是使用C++实现的。系统库包括九个子系统,分别是界面管理工具(Surface Management 管理显示子系统)、媒体库、SQLite、OpenGLEState(对3D的支持)、FreeType(位图和矢量字体的功能)、WebKit( 络浏览器的核心)、SGL(2D图像引擎)、SSL(Secure Socket Layer位于TCP/IP协议与各种应用层协议之间,为数据通讯提供安全支持)和C库。Android 运行环境主要指的虚拟机技术——Dalvik。Dalvik虚拟机和一般Java虚拟机(Java VM)不同,它执行的不是JAVA标准的字节码(bytecode )而是Dalvik可执行格式(.dex)中执行文件。在执行的过程中,每一个应用程序即一个进程(Linux的一个Process)。 二者最大的区别在于Java VM是以基于栈的虚拟机(Stack-based),而Dalvik是基于寄存器的虚拟机(Register-based)。

四、Linux内核层
Android核心系统服务依赖于Linux2.6内核,如安全性、内存管理、进程管理、 络协议栈和驱动模型。Linux内核也是作为硬件与软件栈的抽象层。驱动:显示驱动、摄像头驱动、键盘驱动、WiFi驱动、Audio驱动、flash内存驱动、Binder(IPC)驱动、电源管理等。

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2016年11月7日
下一篇 2016年11月7日

相关推荐