Android系统:系统架构

news/2024/9/28 6:21:00 标签: 系统架构, Andorid系统

文章目录

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

分层设计

自上而下分为:应用层、应用架构层、系统运行层、硬件抽象层、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.niftyadmin.cn/n/5680576.html

相关文章

亲身体验Llama 3.1:开源模型的部署与应用之旅

文章目录 1 Llama 3.1系列的诞生2 大型模型的未来发展3 使用教程4 Llama 3.1在客户服务中的运用 1 Llama 3.1系列的诞生 在人工智能的浪潮中,大型语言模型(LLM)正以其独特的魅力和潜力,成为深度学习领域的一颗耀眼明星。 这些模…

ide使用技巧与插件推荐

在使用IntelliJ IDEA(简称IDEA)这类集成开发环境(IDE)时,掌握一些高效的使用技巧和安装合适的插件可以显著提升开发效率。以下将从IDEA的使用技巧和插件推荐两个方面进行详细阐述,内容不少于2000字。 一、…

Python:lambda 函数详解 以及使用

一、lambda 语法 lambda 函数的语法只包含一个语句,表现形式如下: lambda [arg1 [,arg2,.....argn]]:expression 其中,lambda 是 Python 预留的关键字,[arg…] 和 expression 由用户自定义。 具体如下: [arg…] 是参数列表&#…

CentOS 系统中的文件挂载 U 盘

要将 CentOS 系统中的文件保存到 U 盘,可以按照以下步骤进行操作: 一、插入 U 盘并确定设备名称 将 U 盘插入 CentOS 系统的 USB 接口。使用 fdisk -l 命令查看系统中的磁盘和分区情况,确定 U 盘的设备名称。通常 U 盘会显示为类似于 /dev/…

Floyd--Warshall算法——最短路径

弗洛伊德算法(Floyd) 简介: 主要用来解决任意两点间的最短路径的一种算法(不能解决带有“负权回路”即“负权环”的图,因为它没有最短路径) 时间复杂度为O(N3),空间复杂度为O(N2) 算法思路&a…

【Python】字典 文件操作 生成二维码 多媒体操作

目录 字典 创建字典 查找key 新增键值对 修改键值对 删除键值对 遍历键值对 keys() values() items() 合法的key类型 文件 文件是什么 打开文件 关闭文件 写文件 读文件 *上下文管理器 实现文件查找工具 pip包管理器 生成二维码 安装第三方库 生成二维…

gitlab使用小结

GitLab 是一个基于 Git 的代码托管平台,提供了丰富的功能来管理代码仓库、CI/CD、项目管理等。以下是一些常用的 GitLab 命令和示例,帮助你更好地使用 GitLab。 1、 克隆仓库 克隆一个远程仓库到本地: git clone gitgitlab.example.com:us…

【NTN 卫星通信】基于NR的NTN RAN架构

1 引言 3GPP中,38.821协议中,研究了如何最大限度地减少对NG-RAN中新接口和协议的需求,以支持非地面网络。 研究了包括透传星和再生星的RAN架构。 2 基于透传星的NG-RAN架构 2.1 概述: 对于透传模式,卫星有效载荷在上行链路和下行链路方向上实现频率转换和射频放大器。它…