安卓

首页 » 常识 » 诊断 » 内容回顾认识安卓系统的AOnly
TUhjnbcbe - 2021/10/31 5:30:00
山东白癜风医院 http://m.39.net/pf/a_5837448.html
今天给大家介绍一下Android系统已有的更新机制。目前,现有的Android系统主要有三种不同的更新机制,分别是AOnly、A/B、virtualA/B。virtualA/B是目前谷歌推荐的更新机制,不过目前大部分机型,还是使用较为传统的AOnly更新机制,部分中高端旗舰产品才开始使用A/B、virtualA/B。更优秀的更新机制,可以延长一部手机的系统更新周期。这几种更新方式都有各自的优点和缺点,主要侧重点在于更新机制的安全性、存储空间占用以及用户的可感知性。下面简单介绍一下。AOnly(简称:非A/B更新)顾名思义,这种模式下,系统只在一个分区里面。好处是系统对空间占用少,坏处是OTA更新速度较慢,而且一旦更新失败,容易成砖。A/B(简称:无缝更新)搭载Android7.0系统的GooglePixel采用了这个更新模式,之后有一些中高端机型使用了此模式。简单来说,这种做法可以将系统分别装在两个不同的分区当中,设备则可以从任何一个分区启动系统,但是系统A和系统B共用一个data数据分区。也就是说在更新或者刷入系统时,如果你在使用A分区的系统,那么可以让B分区的文件进行更新。如果B分区更新后出现问题了,还可以重新进入A分区的系统。[1]A/B分区的好处(1)无缝更新。更新过程可以几乎完全在后台进行,无缝更新可以节省大量时间。(2)安全性,不会因为升级出现无法开机的问题。在系统A升级系统B,如果升级成功则重启到B系统,而如果升级失败,则保留在A系统。A/B分区的坏处:(1)多占用10多个G的存储空间到这里,安卓系统就已经有了两个更新机制:A/B(无缝)更新和非A/B更新。但是,为了降低代码复杂性并增强更新性,谷歌在Android11中将这两个机制统一,推出了新的更新机制,virtualA/B(即虚拟A/B),结合了两个前身的优势,将无缝更新带到所有设备,同时最大限度地降低存储成本。virtualA/B(简称虚拟A/B更新)从Android11开始,Google推荐virtualA/B,这种方法,删除了recovery/cache两个分区,但是system只有一套,比A/B少了一套,使用了A/B系统类似的更新方法,ota之后,在分区内产生△system△vendor等差异化内容,重启之后,使用△数据+super内容,组成snapshot,系统引导snapshot开机,如果开机正常,那么开机以后merge△数据到super,等下次重启,使用正常的super分区系统开机。[2]virtualA/B的优点[3]:1:和A/B一样,它支持无缝更新2:支持更新回滚。如果新操作系统无法启动,设备将自动回滚到上一个版本3:使用最小额外空间4:不容易出现OTA之后无法开机问题virtualA/B的缺点:1:在合并创建镜像过程中,对闪存读写性能有一点的要求当然,出厂就是安卓11系统的手机和后期通过OTA的方式升级到安卓11的机型的系统机制并不相同。一般来而言,后期通过OTA的方式升级到安卓11的机型默认还是Recovery升级方案,这是因为分区已经无法修改。对于经常刷机ROOT的机友来说,由于更新机制的不同,在使用Magisk获取ROOT的方式也可能和普通的不一样。此外,对于使用VirtualA/B的机型,第三方REC也不太好适配。需要注意的是,在这已有的三种更新机制当中,Google没有强制手机厂商一定要使用A/B或者VirtualA/B,无论使用A/B或者VirtualA/B,都不影响其使用Android11系统。Google只有在Androidone系统上强制使用A/B。参考文献:[1]csdn,guyongqiangx,-05-07,AndroidA/BSystemOTA分析概览,
1
查看完整版本: 内容回顾认识安卓系统的AOnly