博客
关于我
【Android学习】Android系统架构
阅读量:250 次
发布时间:2019-03-01

本文共 918 字,大约阅读时间需要 3 分钟。

Android系统架构采用分层架构,从低层到高层分为五个层次:Linux内核、硬件抽象层、系统运行库、开发框架以及核心应用程序。这种分层设计使得系统结构清晰,功能模块化,便于维护和扩展。

1. Linux内核

Linux内核作为Android系统的基础,负责底层功能的实现。它处理设备的硬件交互、内存管理、文件系统操作等基础任务。Android运行时(如ART)和应用程序的执行都依赖于Linux内核的支持。

2. 硬件抽象层(HAL)

HAL是硬件抽象层,作为设备内核驱动的抽象接口。它为更高层的Java API框架提供访问底层设备的接口。HAL包含多个库模块,每个模块对应特定硬件组件的接口。当应用程序需要访问硬件时,系统会自动加载相应的库模块。

3. 系统运行库

系统运行库包括两部分:

  • 核心运行时库:提供Java API框架的基础功能,支持Java 8特性,如注解和并发处理。部分核心功能通过原生C/C++库实现,如图形绘制和硬件访问。
  • Android运行时(ART):通过预先编译(AOT)和优化垃圾回收,提升性能和效率。ART采用DEX字节码格式,减少内存占用,适合多线程运行。

4. 开发框架

开发框架提供构建Android应用所需的Java API。其主要组成部分包括:

  • 视图系统:构建用户界面,支持列表、文本框等控件。
  • 资源管理器:管理非代码资源,如图像和字符串文件。
  • 通知管理器:在状态栏显示自定义提醒。
  • 活动管理器:管理应用生命周期,提供导航返回栈功能。
  • 内容提供器:允许应用访问其他应用数据或共享数据。

5. 核心应用程序

Android系统附带核心应用,如电子邮件、日历和联系人。这些应用作为系统应用运行,也可作为开发者测试的基础功能模块。

6. 支持包

支持包用于扩展Android功能,适用于不同版本开发:

  • v4库:最初实现于2011年,支持Fragment、通知兼容等功能。
  • v7库:支持Android2.1及以上,依赖v4库,提供Action Bar功能。
  • v13库:针对Android3.2及以上版本,适合平板开发。

通过这种分层架构,Android系统实现了模块化设计,提升了系统的扩展性和维护性。

转载地址:http://jkqt.baihongyu.com/

你可能感兴趣的文章
Objective-C实现mergesort归并排序算法(附完整源码)
查看>>
Objective-C实现MidpointIntegration中点积分算法 (附完整源码)
查看>>
Objective-C实现miller rabin米勒-拉宾素性检验算法(附完整源码)
查看>>
Objective-C实现Miller-Rabin素性测试程序(附完整源码)
查看>>
Objective-C实现Miller-Rabin素性测试程序(附完整源码)
查看>>
Objective-C实现min cost string conversion最低成本字符串转换算法(附完整源码)
查看>>
Objective-C实现MinhashLSH算法(附完整源码)
查看>>
Objective-C实现MinhashLSH算法(附完整源码)
查看>>
Objective-C实现MinHeap最小堆算法(附完整源码)
查看>>
Objective-C实现minimum coin change最小硬币找零算法(附完整源码)
查看>>
Objective-C实现minimum cut最小切割流算法(附完整源码)
查看>>
Objective-C实现minimum partition最小分区算法(附完整源码)
查看>>
Objective-C实现Minimum Priority Queu最小优先级队列算法(附完整源码)
查看>>
Objective-C实现Minimum Vertex Cover最小顶点覆盖算法(附完整源码)
查看>>
Objective-C实现MinimumCostPath最小成本路径算法(附完整源码)
查看>>
Objective-C实现min_heap最小堆算法(附完整源码)
查看>>
Objective-C实现mobius function莫比乌斯函数算法(附完整源码)
查看>>
Objective-C实现modular Binary Exponentiation模二进制指数算法 (附完整源码)
查看>>
Objective-C实现modular exponential模指数算法(附完整源码)
查看>>
Objective-C实现monte carlo dice蒙特卡洛骰子模拟算法(附完整源码)
查看>>