当前位置: 首页 > article >正文

Android系统:系统架构

文章目录

    • 分层设计
    • 分块设计
    • 总结

分层设计

自上而下分为:应用层、应用架构层、系统运行层、硬件抽象层、Linux内核层

应用层

封装一系列系统App

应用架构层(Framework)

封装一系列运行App需要的Java框架

提供App开发需要的API

系统运行层(Libraries)

封装一系列C/C++库,包含C系统函数库、媒体库、2D和3D库等,为上层提供API

封装Android核心库,提供Java语言核心库所使用的绝大部分功能和Android 的一些核心API,如 android.os、android.net、android.media等

封装虚拟机,负责运行Android应用程序

Android核心库和虚拟机组成Android运行时

硬件抽象层(HAL)

封装一系列库模块,例如相机模块、蓝牙模块等

为上层提供API访问硬件设备

Linux内核层(Linux Kernel)

封装硬件的驱动程序、网络、电源、系统安全以及内存管理等功能

分块设计

层内分出不同的模块

应用框架层(framework)

提供一系列Manager,例如ActivityManager、WindowManager、PackageManager、TelephonyManager、ResourceManager、NotificationManager、LocationManager

系统运行库层(Libraries)

提供一系列程序库,包含WebKit、OpenMAX AL、Libc、Media Framework等

硬件抽象层(HAL)

提供一系列硬件相关模块,包含Audio、Bluetooth、Camera、Sensors等

Linux内核层(Linux Kernel)

提供一系列硬件驱动,包含Audio、Binder(IPC)、Display、Keypad、Bluetooth、Camera、Shared Memory、USB、WIFI

总结

Android的系统结构的设计混合了分层设计和分块设计


http://www.kler.cn/a/322090.html

相关文章:

  • 【入门01】arcgis api 4.x 创建地图、添加图层、添加指北针、比例尺、图例、卷帘、图层控制、家控件(附完整源码)
  • 跳表的理解以及使用
  • 饿了么 ui表单 有滚动条的时候 右上角多一节
  • 网络安全的方方面面
  • 第二十二节:学习拦截器使用方法(自学Spring boot 3.x的第六天)
  • zookeeper面试题
  • C++模拟实现list:list、list类的初始化和尾插、list的迭代器的基本实现、list的完整实现、测试、整个list类等的介绍
  • 缓存的思考与总结
  • mysql默认隔离级别为什么要设置为RC?
  • AI视频技术:引领影视剧拍摄的未来
  • Innodb存储架构
  • 【Redis】分布式锁之 Redission
  • 【Pytorch】大语言模型中的CrossEntropyLoss
  • Node.js官网无法正常访问时安装NodeJS的方法
  • Pencils Protocol 即将登录各大 CEX,依旧看好 $DAPP
  • [教程]如何在iPhone上启用中国移动/联通/电信RCS消息
  • 国产sql工具何时才能出头?
  • 数据定义语言CREATE的应用
  • Pandas-日期类型处理代码详解
  • 如何在IDEA中使用Rainbow Fart