Android系统架构剖析(二)之应用框架演变

Android系统体系结构中,整个Android体系被分为4层:

但是Android系统为什么要采取这样的分层方式呢?在这里我想介绍一下我们软件领域的应用框架发展情况。

在早期的时候,开发软件所使用的api都是直接调用系统的api。如果系统的api想要变化,那么势必会导致之前基于这个系统开发出来的所有软件应用都会付诸东流,代价高的很,所以在那个时候,操作系统的api都不会轻易的改变,软件执行的控制权全部掌握在开发者的手中,这也就限制了操作系统平台的发展,使得平台的弹性大大的降低。如图所示:

为了使得平台拥有良好的弹性并且掌握控制权,软件应用开发领域出现了单层框架开发模式。单层应用程序框架的好处在于把应用和平台分隔开来,由框架里面的基类来调用a应用里面的子类,于是框架拥有软件的执行权,由框架指导应用的执行。

基于上述的框架型软件架构, 开发者们可以基于这个大框架开发出一些小型的独立框架,这就是复合型的框架。比如说在一个大框架里面提供游戏框架、多媒体框架。这种复合型框架的出现,大大的降低了应用开发者们的负担。

在Android的应用框架层和应用层都是用java写的,虽然java语言简单容易,但是它的执行效率却远不及c/c++,为了追求简单、容易、高效,在目前的软件产业里,许多的平台都是双层框架模式,建立出java与c/c++并存的双层框架。

上述介绍了应用框架从早期的无框架、单层模型框架到复合型框架和双层框架的演变,现在很多系统都是采用双层框架,Android系统就是一个例子。

时间: 2024-11-07 11:59:52

Android系统架构剖析(二)之应用框架演变的相关文章

Android系统架构剖析(一)

要说剖析,可能这个词可能用的太大了,下面对Android系统的介绍也就是从我个人理解来说吧. 曾经有人问我,Android是什么?当时这个问题问的我真的蒙了,我就简单的回了一下:Android就是一个基于移动设备的操作系统.时至今日,这个问题我才知道回答的太浅了,我想只有真正的做过开发之后,才能去回答这个问题. 那么Android到底是什么?我觉得Android就是用户与设备之间的一个接口,从Android的体系结构来看,Android分为4层,所以可以说Android是一个连接设备软件块,但是

4412开发板Android系统架构

本文转自迅为开发板手册:http://www.topeetboard.com 1. 架构图直观 下面这张图展示了Android系统的主要组成部分: 可以很明显看出,Android系统架构由5部 分组成,分别是:Linux Kernel.Android Runtime.Libraries.Application Framework.Applications.第二部分将详细介绍这5个部分. 2.架构详解 现在我们拿起手术刀来剖析各个部分.其实这部分SDK文档已经帮我们做得很好了,我们要做的就是拿来主

Android系统架构(一)

一.Android系统版本简介 Android操作系统已占据了手机操作系统的大半壁江山,截至本文写作时,Android操作系统系统版本及其详细信息,已发生了变化,具体信息见下表,当然也可以访问https://developer.android.google.cn/about/dashboards/查询最新的数据. 从表中可以看出,目前使用最多的版本为6.0,4.0以上的已经占据了超过98%. 二.Android系统架构 图摘自:https://developer.android.google.c

iOS和android系统架构对比

iOS和android系统架构对比 iOS是基于UNIX的,直接与底层硬件通信.系统底层.应用框架.应用软件都是采用C/C++或者Objective-C写成的,所以有很高的运行效率. android是基于Linux内核设计,在Linux内核上运行一个Java虚拟机,虚拟机再运行软件.就好似在一个系统上又套了一个系统,以此内存消耗大,运行效率的.

Android系统架构的简单描述

架构图如下: 1)英文版: 2)中文版: 由图可知:Android 系统架构从下到上分为 Linux内核层.中间件. 应用程序框架层和应用程序层. 1.Linux kernel 负责硬件的驱动程序.网络.电源.系统安全以及内存管理等功能. 2.中间件:核心库和运行时(libraries & Android runtime) 1)核心库 即c/c++函数库部分,大多数都是开放源代码的函数库,例如webkit(引擎),该函数库负责 android网页浏览器的运行,例如 标准的 c 函数库libc.o

Android技术19:Android系统架构

Android系统架构是学习Android最基本的知识点,经常在技术面试过程中涉及到有关问题,接下来对Android系统架构进行总结. Android官方文档提供资料显示:Android系统分为4个层次,从低到高依次为Linux kernel(Linux内核层),Libraries和Android运行时Runtime,Android Framework,Applications. 1.Applications应用层 该层主要是运行在Andorid系统上的应用程序,如Home,SMS,Contac

Google工程师解析Android系统架构

导读:Sans Serif是Google的一位工程师,近日发布了一篇博文非常清楚的描述了Android系统架构,中国移动通信研究院院长黄晓庆在新浪微博上推荐了该文,并认为文中对Android的介绍很好,如下是CSDN对文章的简单编译: Andriod是什么? 首先,就像Android开源和兼容性技术负责人Dan Morrill在Android开发手册兼容性部分所解释的,"Android并不是传统的Linux风格的一个规范或分发版本,也不是一系列可重用的组件集成,Android是一个用于连接设备的

【Android系统】Android系统架构简介

概述 Android系统架构如下图: 从上往下一共是四层: 应用程序层.应用程序框架层.函数库与Android运行时层.Linux内核层. 下面分别介绍各层: 分层介绍 应用程序层 包含系列的Android核心应用程序,大部分的Android应用也属于这一层,如日历.闹钟.浏览器等.这一层属于用户. 应用程序框架层 这一层就是普通开发者需掌握的层,我们使用框架里的各个模块来开发应用,这些模块和各种服务都可以复用.理解了这一层,开发者就能更快更好的开发应用.下面介绍一下各个模块: 序号 模块名 用

Android系统架构和平台优劣

(图片来源于网络) Android系统架构采用了分层架构的思想,如上图所示.从上往下一共包括四层: 1.应用程序层 该层提供一些核心应用程序包,例如电子邮件.短信.日历.地图.浏览器和联系人管理等.同时,开发者可以利用java语言设计和编写属于自己的应用程序,而这些程序与那些核心应用程序彼此平等.友好共处. 2.应用框架层 该层是Android应用开发的基础,开发人员大部分情况是在和他打交道.应用程序框架层包括活动管理器.窗口管理器.内容提供者.视图系统.包管理器.电话管理器.资源管理器.位置管