博客
关于我
【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/

你可能感兴趣的文章
python读取wav文件并播放[pyaudio/wave]
查看>>
python读取txt文件的行数
查看>>
Python 中内置的最大堆 API
查看>>
Python 中只有一个 True 和一个 False 对象吗?
查看>>
python读取mtcars数据集并实现以下操作_关于数据处理。。,Python交流,技术交流区,鱼C论坛 - Powered by Discuz!...
查看>>
Python 中多线程与多处理之间的区别
查看>>
Python 中如何使用 lambda 函数
查看>>
Python 中如何创建多行字符串?
查看>>
Python 中如何处理异常?
查看>>
Python 中如何实现列表的切片?
查看>>
Python 中如何实现字典的排序?
查看>>
Python 中常用的数据类型及相关操作详解
查看>>
python 中文乱码
查看>>
Python 中生成器与普通函数的区别
查看>>
Python 中的 *tuple 和 **dict 是什么意思?
查看>>
Python 中的 filter() 函数:筛选可迭代对象元素
查看>>
Python 中的 Pillow 不允许我打开图像(“超出限制“)
查看>>
Python 中的 threading 模块和 multiprocessing 模块有何区别?
查看>>
Python 中的 threading 模块和 multiprocessing 模块有何区别?
查看>>
Python 中的 Turtle 库详解
查看>>