Android 系统架构

Android系统架构分为四层  从上往下一次是

应用层   、 应用框架层  、系统运行库层 、Linux内核层


Android 系统架构_第1张图片

1楼、应用层:安装在手机上的应用程序都安装在这一层


2楼、应用程序框架层:简化组件的重用,开发人员可以直接使用其提供的组件来进行

        快速的应用程序开发,也可以通过继承而实现个性化的拓展

Activity Manager(活动管理器):管理各个应用程序生命周期以及回退功能

Window Manger(窗口管理器):管理所有的窗口程序

Content Provider(内容提供者):使得不同应用程序之间存取或者分享数据

View System(视图系统):构建应用程序的基本组件

NotificationManager(通告管理器):使得应用程序可以在状态栏中显示自定义的提示信息

Packge Manager(包管理器):Android 系统内的程序管理

TelephoneManager(电话管理器):管理所有的移动设备功能

Resource Manager(资源管理器):提供应用程序使用的各种非代码资源

LocationManger(位置管理器) :提供位置服务

XMPP Service :(XMPP服务)



3楼、分为两部分:系统库Android运行时

系统库: SurfaceManager:执行多个应用程序时候,负责管理显示与存取操作间的互动,另外                  也负责2D绘图与3D绘图进行显示合成

               Media Framework:多媒体库,基于PacketVideo OpenCore;支持多种常用的音                        频、视频格式录制和回放,编码格式包括MPEG4、MP3、H.264、AAC、ARM。

               SQLite:小型的关系型数据库引擎

               OpenGL|ES:3D绘图函数库

               FreeType:用于显示位图和矢量字体

                WebKit:Web浏览器的软件引擎

                SGL:底层的2D图形渲染引擎

                SSL:安全套接层,是为网络通信提供安全及数据完整性的一种安全协议

                Libc:继承自BSD的C函数库bionic libc,更适合基于嵌入式Linux的移动设备    


Android运行时 核心库:提供了JavaAPi中的大多数功能,同时包含了Android的一些核心                                               API 如:android.os、android.net、android.media

                        Dalvik虚拟机:Dalvik虚拟机是一种基于寄存器的Java虚拟机,,Android程                          序在虚拟机中执行的并非编译后的字节码,而是通过转换工具dx将Java字节                          码转成dex格 式的中间码。

Dalvik和标准Java虚拟机的区别:


Android 系统架构_第2张图片






Linux内核层:

Android系统是基于Linux内核的,这层为Android设备的各种硬件提供了底层驱动,如显示驱动、音频驱动、照相机驱动、蓝牙驱动、Wi-Fi驱动、电源管理等

你可能感兴趣的:(Android 系统架构)