理解Android系统

Android整体架构

主要分为五层

Android系统层级架构图

应用层 Applications:主要是用户界面,通常以Java程序编写,其中还包含各种资源文件,经过编译后生成APK包。Android本身就提供了一些核心的应用。

应用程序框架 Application Framework:为应用层的开发者提供API,实际上是一个应用程序的框架,本层包含了UI中各种控件,WebView等

核心库 Libraries:一些嵌入式库,如多媒体框架,图像引擎,嵌入式数据库,浏览器核心等

运行环境层 Runtime:Dalvik(虚拟机技术)

Linux内核层 Linux Kerenl:Android对操作系统的使用包括核心和驱动程序两部分


Android系统的分区结构

Android设备中,常见的几个分区:

Boot Loader分区

在手机进入系统之前出事后会软硬件环境,加载硬件设备,最终让手机成功启动。(一般厂商都会进行加密,目的是仅能引到官方固件,故刷机有风险)

Boot分区

存储着Android的Boot镜像,其中包含Linux Kerenl(zImage)和 initrd 等文件

注:

zImage:zImage是可可运行的二进制内核镜像

intrid:Linux初始RAM磁盘(initrd)是在系统引导过程中挂载的一个临时根文件系统,用来支持两阶段的引导过程。initrd文件中包含了各种可执行程序和驱动程序,它们可以用来挂载实际的根文件系统,然后再将这个 initrd RAM磁盘卸载,并释放内存。

Splash分区

主要是存储系统启动后第一屏显示的内容,一般为公司logo或动画,存储在Boot Loader中

Radio分区

这个是基带所在的分区,主要存储着一些与通信质量相关的Linux驱动,如电话,蓝牙,GPS,Wifi驱动等

一般来说,常用的驱动是可以打包存在于Linux内核的Boot分区,但为了提高设备的通信质量,故单独开辟了Radio分区

Recovery分区

存储着一个mini型的Android Boot镜像文件,主要用于故障维修和系统恢复

System分区

存储着Android系统的镜像文件,包含Android的Framework,Libraries,Binaries和一些预装应用。系统挂载后即 /system 目录

Data分区

数据分区,是设备的内部存储分区,如应用产生的图片,声音等数据文件,系统挂载后即 /data 目录

Cache分区

用于存储各种实用的文件,如恢复日志,OTA下载的更新包等


Android启动过程

主要分为两个阶段,Linux启动阶段和Android启动阶段







  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值