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

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.lryc.cn/news/445020.html

相关文章:

  • NCNN 源码(1)-模型加载-数据预处理-模型推理
  • 重修设计模式-结构型-享元模式
  • JavaScript 运算符
  • 3.js - 运动曲线
  • 免费ppt模板哪里找?职场必备这些利器
  • wampserve 配置本地域名,出现错误
  • MySQL慢查询优化指南
  • 怎么录制游戏视频?精选5款游戏录屏软件
  • 论文阅读 - MDFEND: Multi-domain Fake News Detection
  • LabVIEW软件出现Bug如何解决
  • 【数据结构-栈】力扣844. 比较含退格的字符串
  • DataFrame生成excel后为什么多了一行数字
  • linux 内存屏障(barrier)分析
  • 【人工智能】Transformers之Pipeline(十九):文生文(text2text-generation)
  • 如何使用ssm实现基于VUE的儿童教育网站的设计与实现+vue
  • MODBUS TCP 转 CANOpen
  • vue2+elementUI实现handleSelectionChange批量删除-前后端
  • LLMs之OCR:llm_aided_ocr(基于LLM辅助的OCR项目)的简介、安装和使用方法、案例应用之详细攻略
  • 低代码平台后端搭建-阶段完结
  • 暑假考研集训营游记
  • C#中的报文(Message)
  • Python知识点:如何使用Python与Java进行互操作(Jython)
  • ffmpeg解封装解码
  • golang学习笔记10-循环结构
  • Java高级编程——泛型(泛型类、泛型接口、泛型方法,完成详解,并附有案例+代码)
  • GPU硬件如何实现光栅化?
  • Python写入文件内容:从入门到精通
  • 相亲交易系统源码详解与开发指南
  • Golang | Leetcode Golang题解之第413题等差数列划分
  • 汽车总线之----FlexRay总线