Android系统框架

Android系统架构

android系统架构从上到下分为五层:应用层、应用框架层、系统运行库层、硬件抽象层、Linux内核层。如图1所示:

图1 Android系统框架

应用层

应用层就是App应用程序,这里包括了系统级内嵌的App和常规开发人员的非系统级的App,如图二所示。

图二 应用层

系统级的App主要位于系统源码的packages包里面,如图三是packages包的目录:

图三 packages目录

应用框架层(Java API Framework)

应用框架层为开发应用程序提供常规的API,开发人员可以通过应用框架层开发应用,也可以称为Java Framework,除了给上层应用调用API,另一方面也跟C/C++程序库和硬件抽象层交互,如图四所示,

图四 应用框架层

这一层中提供了很多的管理器,如ActivityManger、LocationManager、PackageManager等,如图五是应用框架层提供的组件。

图五 应用框架层组件

应用框架层的代码主要位于framework包的/base目录里,如图六是base目录的介绍:

图六 framework/base目录

系统运行库层(native层)

系统运行库层分为两部分:C/C++程序库和运行时库,其中运行时库又分为两部分:虚拟机和核心库,如图七所示。C/C++程序库主要给framework调用给开发人员提供功能。虚拟机有Dalvik和ART,一个是即时编译,一个AOT预编译。其代码主要位于系统源码的/framework,/art, /dalvik 包下。

图七 native层

硬件抽象层

硬件抽象层位于操作系统内核和硬件电路的接口层,主要是把硬件抽象分离出来,使操作系统不能直接操作硬件,也使硬件与平台无关性。代码位于系统源码的 hardware包中。

Linux内核层

Android的核心系统服务用Linux核心,也增加了Android专用的驱动。
最后这五层的架构就很明了,我们在看一下Android的系统架构图:

Android系统框架
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 概述 Android基于Linux Kernel,但不是Linux,是Linux的一个变种; Android系统框...
    CodeMagic阅读 396评论 0 0
  • 1、应用程序. Android会同一系列核心应用程序包一起发布,该应用程序包包括email客户端,SMS短消息程序...
    juneway阅读 494评论 0 0
  • 上图就是我们Android操作系统的框架图,分为四层,越往上越接近用户,越往下越接近硬件,下面我们从 下往上...
    _执_念__阅读 982评论 0 0
  • Android框架概述: Android的架构是分层的,非常清晰,分工很明确。Android本身是一套软件堆叠(S...
    常思行阅读 3,384评论 0 14
  • 1. Android系统架构 Android系统架构分为五层:从上到下依次是应用层、应用架构层、系统运行库层、硬件...
    Eren丶耶格尔阅读 25,601评论 1 27