博客
关于我
【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 堆排序
查看>>
python编程方式之一-函数式编程
查看>>
python 复习计划
查看>>
Python 多处理 apply_async 永远不会在 Windows 7 上返回结果
查看>>
Python 多处理 Numpy 随机
查看>>
Python 多处理 >= 125 列表永远不会完成
查看>>
Python 多处理:在第一个子错误时中止映射
查看>>
Python 多处理不断产生 pythonw.exe 进程而不做任何实际工作
查看>>
Python 多处理从不加入
查看>>
Python 多处理如何优雅地退出?
查看>>
Python 多处理将子进程的标准输出重定向到 Tkinter 文本
查看>>
Python 多处理库错误(AttributeError:__exit__)
查看>>
Python 多处理模块的 .join() 方法到底在做什么?
查看>>
python 多线程与GIL
查看>>
python 多进程-基础
查看>>
python 多进程-进阶-进程池
查看>>
python 多进程-进阶-进程间通信之Pipe
查看>>
python 多进程-进阶-进程间通信之Queue
查看>>
python 如何“否定“value : 如果为真则返回假,如果为假则返回真
查看>>
Python 如何在 Web 环境中使用 Matplotlib 进行数据可视化
查看>>